簡體   English   中英

為什么不能使用Delphi XE3注冊64位COM DLL

[英]Why the 64-bit COM DLL can't be registered using Delphi XE3

我有一個COM對象,該對象最初是在32位Delphi 2007下編譯的。 現在,我已使用64位編譯器移植到Delphi XE3。 它可以使用新的64位DLL成功編譯,但是我無法注冊它。

我正在使用Admin來注冊DLL,它對於32位DLL而言工作正常,但對於64位而言卻不能。

它一直說“對內存位置的無效訪問”

這里有什么提示嗎?

PS:我使用的命令只是%systemroot%\\System32\\regsvr32.exe test.dll

在Windows 7 64位上注冊時,它顯示“對內存位置的無效訪問”; 在Windows 8 64位中注冊時,它顯示“動態鏈接庫初始化例程失敗”。

是的,我找到了原因。 在單元之一的初始化部分,它仍使用第三方32位浮點運算。 刪除代碼后,它成功注冊了DLL。

在win7上,錯誤消息令人困惑,但是在win8上,它說“動態鏈接庫初始化例程失敗”,這給出了更清楚的原因。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM