1
我有一個COM對象,最初是在Delphi 2007下編譯的,32位。現在我已經使用64位編譯器移植到Delphi XE3。它用一個新的64位DLL編譯成功,但我無法獲得它的註冊。爲什麼64位COM DLL無法使用Delphi XE3註冊
我正在使用管理員註冊DLL,它適用於32位DLL,但不適用於64位。
口口聲聲說
任何這裏提示「到內存位置無效的訪問」?
PS:我使用的命令只是%systemroot%\System32\regsvr32.exe test.dll
。
在Windows 7 64位註冊時,它顯示'無效訪問內存位置';當在Windows 8 64位註冊時,它顯示'動態鏈接庫初始化例程失敗'。
如果這是您第一次運行該代碼,那麼你嘗試應該預期指針截斷錯誤加入madExcept或類似的並獲得一些調試信息如果你可以將代碼編譯成易於調試的代碼然後這也可能有幫助 – 2013-03-19 16:27:44
是否有你需要使用的regsvr64.exe? – 2013-03-19 20:40:07
@ NickHodges - regsvr32可以做到這一點,不知道爲什麼它沒有64位系統的名字,我將它用於64位和32位版本的deskband DLL,這個命令同樣適用於32位或64位 – 2013-03-19 21:46:03