文章編號: 247979 - 上次校閱: 2007年8月6日 - 版次: 2.2

PRB: 錯誤 429 使用 MSDN 檔案系統物件程式設計範例

系統提示本文適用於您使用的作業系統之外的作業系統。與您不相關的文章內容已停用。

在此頁中

全部展開 | 全部摺疊

徵狀

您會散發安裝下列的錯誤顯示之後執行的應用程式時將其中一個 MSDN 程式設計範例使用的檔案系統物件 (FSO) 的應用程式:
執行階段錯誤 429': ActiveX 元件無法建立物件

發生的原因

這個錯誤發生是因為許多 MSDN 程式碼範例使用晚期繫結至 Microsoft 指令碼 Runtime (包含 [FS0 該元件)。因為使用晚期繫結元件 (Scrrun.dll) 的參考不是必要的。當您使用安裝精靈 」 或封裝暨部署精靈 」 來封裝應用程式時,[精靈] 會查看以查看哪些元件需要封裝中包含專案中參考。因為這個元件沒有參考元件不包含,最終結果是錯誤,當您嘗試建立一個 FSO。

這個問題並非特定 FSO 或指令碼執行階段。當您使用晚期繫結錯誤可以與任何元件就會發生。如果您使用晚期繫結,請確定您晚期繫結至元件是隨附在您的應用程式的其中一個封裝或目前已在目標電腦。

解決方案

必須安裝 Microsoft 指令碼執行階段,從 Microsoft Windows 指令碼元件。自我解壓縮 EXE 來安裝 Microsoft Windows 指令碼元件。您可以轉散發這個執行檔,您的安裝封裝。或者,您的客戶可以下載並安裝適當的自我解壓縮 EXE 在下列 Microsoft 網站:
http://www.microsoft.com/downloads/details.aspx?FamilyID=01592C48-207D-4BE1-8A76-1C4099D7BBB9&displaylang=en (http://www.microsoft.com/downloads/details.aspx?FamilyID=01592C48-207D-4BE1-8A76-1C4099D7BBB9&displaylang=en)

狀況說明

這種行為是經過設計規劃的。

其他相關資訊

重製行為的步驟

  1. 請確認指令碼的執行階段 (Scrrun.dll) 存在於您的電腦上。
  2. 在 Visual Basic 中啟動新的標準 EXE 專案。預設會建立 Form1。
  3. 將下列程式碼加入至 Form1。(此程式碼是從 MSDN 範例)。
    Private Sub Form_Click()
    Set fs = CreateObject("Scripting.FileSystemObject")
    Set a = fs.CreateTextFile("c:\testfile.txt", True)
    a.WriteLine ("This is a test.")
    a.Close
    End Sub
    					
  4. 從 [檔案] 功能表儲存專案再選擇 製成 Project1.exe
  5. 若要驗證這可使用,執行 EXE,然後按一下表單上。您會發現一個名為 Testfile.txt 的檔案中根包含文字 (C:\) 目錄、 「 這是測試 」。
  6. 啟動 「 封裝暨部署精靈 」,並為 Project1 建置安裝套件。
  7. 沒有安裝指令碼的執行階段的電腦上安裝應用程式。
  8. 執行應用程式,然後在 Form1 上按一下。
  9. 您應該會收到錯誤 429。

?考

如需詳細資訊按一下面的文件編號,檢視 「 Microsoft 知識庫 」 中的發行項:
254166? (http://support.microsoft.com/kb/254166/EN-US/ ) 注意: Microsoft 指令碼執行階段程式庫的散發失敗

這篇文章中的資訊適用於:
  • Microsoft Visual Basic 5.0 Professional Edition
  • Microsoft Visual Basic 6.0 Professional Edition
  • Microsoft Visual Basic 5.0 Enterprise Edition
  • Microsoft Visual Basic Enterprise Edition for Windows 6.0
關鍵字:?
kbmt kbappsetup kbdeployment kbprb kbsetup kbwizard KB247979 KbMtzh
機器翻譯機器翻譯
重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。
按一下這裡查看此文章的英文版本:247979? (http://support.microsoft.com/kb/247979/en-us/ )
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。