我有問題的註冊和在Windows 7 X64的使用動態庫,DLL編譯的64位版本,但編譯器日誌輸出:有問題的註冊和使用一個64位的C++編寫ATL動態庫
Error MSB3073: The command "RegSvr32 /S "...\x64\Debug\xxxxx.dll" exited with code 3.
但是,當我構建32位版本的dll時,編譯器日誌輸出RegSvr32命令成功。
我已經在x86和x64構建配置中將Linker >> General >> Register Output
設置爲No
。
我試圖運行在64位的DLL的RegSvr32的64位和32位版本(沒有無聲模式),但它具有以下錯誤響應:使用依賴Walker和
The module "xxxxx.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 module could not be found.
我檢查據報道有超過100個dll丟失,所以我不能在這裏顯示它們。其中一些是:
API-MS-WIN-CORE-COM-L1-1-1.DLL
API-MS-WIN-CORE-DATETIME-L1-1-1.DLL
API-MS-WIN-CORE-DEBUG-L1-1-1.DLL
API-MS-WIN-CORE-ERRORHANDLING-L1-1-1.DLL
API-MS-WIN-CORE-FILE-L1-2-1.DLL
...
WLANUTIL.DLL
WLDAP32.DLL
WTSAPI32.DLL
XMLLITE.DLL
的Dependency Walker與開DLL:
我想知道什麼,只是DLL的64位版本的原因不能用了RegSvr32註冊。
任何幫助,非常感謝解決這個問題。
UPDATE 1
試圖與此動態庫的結果在下面的錯誤(32位和64位版本)中運行的應用:
The program can't start because api-ms-win-core-errorhandling-l1-1-1.dll is missing from your computer. Try reinstalling the program to fix this problem.
所有可再發行包目前我安裝:
是否有六sual C++ redistributables我必須安裝才能解決這個問題?
更新2
我發現更多信息api-ms-win-core-errorhandling-l1-1-1.dll
here,並試圖用這個動態庫鏈接WindowsApp.lib
,但它甚至沒有解決的問題。
更新3
我跑了系統文件檢查器,它給了我下面的輸出,因爲我認爲應該:
Windows Resource Protection did not find any integrity violations.
我試過你說的,但我沒有解決問題。我認爲DLLMain沒有任何問題。 – GTAVLover