2010-06-28 44 views
0

我正在嘗試使用我的客戶端擁有許可證的API。我被給了一個COM Interop DLL。使用別人的COM Interop DLL

我可以寫我需要的所有的代碼,但是當我去運行它,我收到以下錯誤:

Retrieving the COM class factory for component with CLSID {73C527F2-C6C0-4F4B-92F7-1448EC342FC5} failed due to the following error: 80040154. 

任何想法?有什麼我需要註冊?

感謝, 傑克

+1

這是一個64位應用程序嗎?你不能使用64位的COM。另外,我認爲它已正確註冊? – 2010-06-28 22:10:36

+0

我不知道大約64位。我正在運行一個x64系統。我已經將應用程序平臺目標設置爲x86,但同樣的錯誤。 通過註冊它,你的意思是使用regasm.exe?我已經完成了(在命令中沒有使用選項)。雖然我沒有在我的註冊表中看到ClassId。 – jchapa 2010-06-28 22:16:37

回答

2

您是否在開發機器上安裝了實際的COM對象/軟件,或者您是否僅複製了互操作程序集?如果是後者,互操作程序集將具有所有接口和對象配置文件,這些接口和對象配置文件將使Visual Studio中的智能感知工作,但它不包含實際的可執行代碼。

+0

啊,所以除非實際的應用程序在系統上運行,否則它不會工作? – jchapa 2010-06-28 22:17:49

+0

是的,互操作程序集會告訴.net運行時需要諸如類ID和函數配置文件之類的信息,但是您需要安裝實際的COM對象才能執行任何代碼。 – 2010-06-28 22:21:19

+0

我假設大多數託管公司不會讓你安裝這些。 :-) 感謝您的幫助。 – jchapa 2010-06-28 22:36:01

2

0x80040154錯誤的手段 「類沒有註冊」。您需要註冊COM對象。您可以使用Regsvr32工具。