我有一個32位編譯的DLL包含vb6代碼。在我的以前的操作系統,這是Windows 7 64位,我能夠註冊和運行這個DLL在我的C#應用程序罰款。現在,運行Windows 8.1,當我嘗試註冊同一個DLL,它註冊的,但當我嘗試讀取DLL在我的代碼,我得到:Windows 7 64位dll註冊與Windows 8.1 64位dll註冊
Retrieving the COM class factory for component with CLSID {D19A00C4-A7F9-4E14-A5E1-D060B7EB57F3} failed due to the following error: 80040154 Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)).
32位的DLL(編譯爲Interop.VB6Class)用於針對x86構建的ac#類 。
我試圖從我的64位的文件夾都regasm和32位的文件夾,沒有運氣
當我運行的Dependency Walker(一個可愛的小應用程序,檢查是否所有的DLL的依賴可用,並且您的CPU版本對於dll及其依賴項匹配),我仍然收到消息「找到了具有不同CPU的模塊」。
我遵循了無數的鏈接和建議,所以如果任何人都可以幫助我,我會接受你作爲我的救星,永遠稱你爲國王。
你用什麼工具來註冊這個VB6 DLL - ''regasm'或'regsvr32'?此外,請不要使用/ i參數只是'C:\ Windows \ SysWow64 \ regsvr32.exe my.dll' – wqw
我已經嘗試過regsvr32和regasm。我沒有使用任何參數,只是對syswow64文件夾的cd命令 –
「Command Prompt(Admin)」中的所有這些?這是提升的命令提示符? – wqw