我有一個Visual C++ 6項目正在創建一個COM DLL。這是一個我多年以來沒有用過的舊項目,但我最近回到它來更新DLL的一些功能。我遇到的問題是,當我嘗試手動註冊由項目創建的DLL(使用regsvr32)時,我什麼也得不到迴應。它沒有說它成功了,它並沒有說它失敗了。我已驗證該DLL未被添加到註冊表中。我從來沒有見過regsvr32的情況,當它不顯示任何確認消息。Visual C++ ATL Com註冊問題
此外,該DLL被設置爲在項目中自注冊,並且當它嘗試執行此操作時,它也不會顯示消息。
我很久沒有碰過這個項目,但是我最後一次碰觸它,它沒有問題。現在我回到它,突然間我有這個問題。就好像由Visual C++項目創建的DLL與當前版本的Windows不兼容。我已經將開發軟件更新到SP6,但並沒有改變這種情況。
我跑取決於REGSVR32當它被指向所創建的DLL,它顯示了這樣的信息:
LoadLibraryExW( 「C:\ Source32 \ BIS \項目\ ALFA \ DigiPixSvc \ DigiPixObj \調試\ DigiPixObj」 ,0x00000000,LOAD_WITH_ALTERED_SEARCH_PATH)返回NULL。錯誤:操作系統無法運行%1(182)。
任何人都可以請告訴我爲什麼會發生這種情況,我能做些什麼來糾正它?
你在使用什麼操作系統?你是否想以管理員身份運行regsvr32? – xxbbcc
操作系統是Windows XP SP3。我在運行regsvr32時以管理員身份登錄。 –
你可以在'DLLRegisterServer()'中放置一個斷點,然後調試運行regsvr32時會發生什麼? – xxbbcc