簡體   English   中英

檢索COM類工廠失敗; 未注冊課程

[英]Retrieving COM class factory failed; class not registered

這似乎是SO上的熱門話題,但是我所見過的所有解決方案都不適合我。

我的Web應用程序使用PolarZIP來處理壓縮和解壓縮從最終用戶處獲得/接收的XML文件。 在我的項目中沒有對PolarZIP.dll的引用,在類中也沒有任何using語句可以完成這項工作,但是在我們的實時服務器上,應用程序的行為正確。 在本地,一旦它嘗試實例化這個PolarZIP對象,我就會得到以下異常:

由於以下錯誤,未能為具有CLSID {9A00B901-D104-11D4-B8F7-080030001D26}的組件檢索COM類工廠:80040154未注冊類(HRESULT的異常:0x80040154(REGDB_E_CLASSNOTREG))。

這是我可以找到的最受歡迎的線程:

由於以下錯誤,無法為具有CLSID {XXXX}的組件檢索COM類工廠:80040154

但是,將解決方案中的所有項目都設置為針對x86(而不是“ Any CPU”)進行構建會使情況變得更糟-當我啟動應用程序時,出現了這個新的服務器錯誤:

無法加載文件或程序集“ OurSoftware.Business”或其依賴項之一。 試圖加載格式錯誤的程序。

引用此錯誤的大多數其他問題或者只是被標記為我上面鏈接的那個的重復項,或者根本沒有任何答案,我的C:\\Windows\\SysWOW64\\文件夾中有PolarZIP.ocx。實時服務器(軟件正常運行的地方)。

有任何想法嗎?

編輯; 如果很重要, CLSID 9A00B901-D104-11D4-B8F7-080030001D26 確實會顯示在regedit中。 名稱:(默認),類型:REG_SZ,數據:PolarZIP控制

復制文件還不夠-您需要注冊庫。 這通常由安裝程序處理-在附近復制文件通常不是一個好主意。 如果您沒有使用安裝程序的選項,請查看regsvr32.exe。 很有可能還需要處理其他步驟,並且需要安裝依賴項-實際上,到目前為止,使用安裝程序是首選方法:)

此外,請確保位數正確。 32位應用程序無法訪問64位組件,反之亦然。

您是否使用'Depends.exe'檢查了所有依賴庫是否丟失?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM