主頁 > 知識庫 > ASP:ActiveX不能創(chuàng)建Scripting.FileSystemObject對象解決辦法

ASP:ActiveX不能創(chuàng)建Scripting.FileSystemObject對象解決辦法

熱門標(biāo)簽:外呼線路批發(fā) 創(chuàng)意電話機器人 世界地圖標(biāo)注了哪些城市 java外呼系統(tǒng)是什么 石家莊慧營銷外呼系統(tǒng) 濟源電銷外呼系統(tǒng)線路 梧州市地圖標(biāo)注 武穴地圖標(biāo)注 地圖標(biāo)注陽江

今天遇到個問題,一個ASP網(wǎng)站生成靜態(tài)頁面時報錯:

Microsoft VBScript 運行時錯誤 錯誤 '800a01ad'
ActiveX 部件不能創(chuàng)建對象: 'Scripting.FileSystemObject'

其實這個問題比較常見,報錯原因是服務(wù)器不支持FSO組件。像風(fēng)訊、科汛、動易這些ASP的主流CMS系統(tǒng)中經(jīng)常會遇到這種情況,因為他們都是采取靜態(tài)生成機制的,需要FSO組件支持。在開始之前,你有必要先用ASP探針測試下服務(wù)器對FSO組件的支持情況,通常我們使用的是Windows 2003系統(tǒng)的服務(wù)器。
下面說下我的具體解決思路,對每一種可能會產(chǎn)生報錯的原因都作了相應(yīng)分析,希望對你能有所幫助。

1)“scrrun.dll”文件未注冊。行C:\WINDOWS\system32文件夾下,看下有沒有scrrun.dll文件。如果沒有,就去系統(tǒng)安裝目錄i386文件夾中拷貝一個過來。接下來,開始菜單->運行以下命令注冊一下FSO組件即可:
regsvr32.exe %windir%/system32/scrrun.dll這樣就開啟了服務(wù)器對FSO組件的支持,如果你想關(guān)閉FSO組件,則運行以下命令:

regsvr32.exe /u %windir%/system32/scrrun.dll正常到這里,你的問題就可以解決了。

2)如果還不行,檢查一下瀏覽器是否禁用了ActiveX控件。正常是不會的,除非是服務(wù)器,安全級別才會嚴(yán)格限制。如果存在這種情況,那就把瀏覽器的安全級別調(diào)整為中低即可。
3)你的服務(wù)器本身就不支持FSO組件。
4)考慮權(quán)限問題。依次執(zhí)行如下操作:
開始菜單->運行->regedit->確定,依次找到HKEY_CLASSES_ROOT\Scripting.FileSystemObject,右鍵“權(quán)限”,加上Everyone、Internet來賓帳號(IUSR...)用戶的權(quán)限,重啟IIS即可解決。
5)附:服務(wù)器不支持Scripting.Dictionary組件的解決辦法
通過以上幾步就能完美解決ActiveX創(chuàng)建對象失敗的問題了。如果還出現(xiàn)不支持Scripting.Dictionary組件的問題,解決辦法也是類似的,參考第一步執(zhí)行regsvr32.exe %windir%/system32/scrrun.dll命令即可。如果還沒解決,則考慮權(quán)限問題,可以參照第四步到注冊表中給這個對象添加下權(quán)限即可。舉一反三,如果再遇到類似問題的話,知道怎么去解決了吧!
6)附:Server.CreateObject 失敗解決辦法。我們執(zhí)行程序的時候可能會提示類似錯誤,如下:
服務(wù)器對象 錯誤 'ASP 0177 : 800401f3'
Server.CreateObject 失敗
/include/test.asp,行38打開test.asp,檢查源碼38行附近,看下創(chuàng)建對象的寫法有沒有錯誤,標(biāo)準(zhǔn)寫法應(yīng)該是:

% Set fso = Server.CreateObject("Scripting.FileSystemObject") %>
這種情況大多是程序員粗心導(dǎo)致的。其實,Scripting.FileSystemObject組件是可以改名的,這樣會增加服務(wù)器的安全性,我們可以在注冊表中更改,方法如下:
開始菜單->運行->regedit->確定,依次找到HKEY_CLASSES_ROOT\Scripting.FileSystemObject,右鍵“重命名”,再執(zhí)行第一步注冊下scrrun.dll文件即可。注意一點,你寫程序的時候要以這個新名稱創(chuàng)建對象,否則會報錯。7)附:IIS自帶組件
有沒有發(fā)現(xiàn)一點,這些問題的原因都出在IIS自身組件身上,下面提供下常見的IIS組件,以供參考:
MSWC.AdRotator
MSWC.BrowserType
MSWC.NextLink
MSWC.Tools
MSWC.Status
MSWC.Counters
SWC.PermissionChecker
WScript.Shell
Microsoft.XMLHTTP
Scripting.FileSystemObject
ADODB.Connection小結(jié)一下,關(guān)于ActiveX不能創(chuàng)建Scripting.FileSystemObject對象的類似問題,大體上解決辦法都是類似的,主要是思想要清晰:首先考慮組件注冊問題,其次是組件權(quán)限問題,如果服務(wù)器配置沒有問題的話,那就仔細(xì)檢查一下你的程序源碼吧!

標(biāo)簽:迪慶 南寧 淮北 唐山 滁州 甘南 揭陽 來賓

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《ASP:ActiveX不能創(chuàng)建Scripting.FileSystemObject對象解決辦法》,本文關(guān)鍵詞  ASP,ActiveX,不能,創(chuàng)建,Scripting.FileSystemObject,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《ASP:ActiveX不能創(chuàng)建Scripting.FileSystemObject對象解決辦法》相關(guān)的同類信息!
  • 本頁收集關(guān)于ASP:ActiveX不能創(chuàng)建Scripting.FileSystemObject對象解決辦法的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章