我正在嘗試註冊一個公司發送給我的COM DLL,用於與他們的某個設備通話。我以前能夠進行註冊此計算機上,但前幾天就開始拋出錯誤,所以我註銷了它,現在它傳遞到的regsvr32.exe失敗,COM dll不再註冊
"The module IRAnalyzerCOM.dll" failed to load
Make sure the binary is stored at the specified path or debug it to check for problems with the binary or dependent .DLL files
The specified procedure could not be found
我試着打開的regsvr32.exe與Depends.exe分析,和分析它,看看有什麼錯誤彈出,而我最終得到的是:
...
Loaded "IRANALYSERCOM.DLL" at address 0x0000000010000000. Successfully hooked module.
Unloaded "IRANALYSERCOM.DLL" at address 0x0000000010000000.
LoadLibraryExW("C:\IRAnalyserCOM.dll", 0x0000000000000000, LOAD_WITH_ALTERED_SEARCH_PATH) returned NULL. Error: %1 is not a valid Win32 application (193).
Loaded "" at address 0x00000000002A0000. Successfully hooked module.
Unloaded "" at address 0x00000000002A0000.
(我坐在它在C:\所以有沒有可能有任何空間在路徑名問題)。您可能會注意到regsvr32.exe確實似乎嘗試加載「」,實際上,depends.exe在模塊列表中顯示「<空字符串」模塊。 (顯然無法加載)
此.DLL在另一臺桌面上成功註冊,並且都運行Windows 7 64位。
您是否嘗試過在運行regsvr32 c:\ IRAnalyserCOM.dll之前將當前目錄更改爲c:\ windows \ system32?你有沒有明確比較這臺機器上的DLL和另一臺機器上的DLL,以確保該文件沒有被損壞? –
您是否執行過「dumpbin/imports」來查看二進制文件依賴哪個DLL來加載?那麼你的PATH中的所有DLL是什麼? – selbie