類不支持自動化

類不支持自動化(錯誤 430)
並非所有的對象都能顯露自動化接口。此錯誤有以下原因和解決方法:
雖然在指定的 GetObject 或 CreateObject 函式調用中找到此類,但並沒有顯露編程的接口。
除非一個對象有支持自動化的接口,否則不能寫代碼來控制該對象的行為。檢查創建此對象的應用程式的文檔,以了解在此對象類上使用自動化的限制。
您將一個工程從 .dll 更改為 .exe,或從 .exe 更改為 .dll。如果您有一個已經編譯並註冊了的 .dll 伺服器,然後您將工程類型更改為 .exe 並重新進行了編譯,因為 .dll 和 .exe 已經在您的系統中註冊了,因此您無法創建任何一個對象。您必須手工取消對舊的 .dll 或 .exe 的註冊來避免這一問題。
發生這一問題的原因是工程兼容性和將工程從 .exe 更改為 .dll 綜合造成的。在工程兼容性中,CLSID 被保留,而不是 IID 被保留。因為 CLSID 被保留,所以最後被註冊的類帶有兩個伺服器,一個是進程內伺服器,另一個是本地伺服器。當創建一個實例時,將選擇進程內伺服器。當發生界面查詢時,.dll 不支持 IID,因為它是新的。
詳細信息,可選取有問題的項目,並按下 F1 鍵。

相關詞條

熱門詞條

聯絡我們