2010-12-07 84 views
5

我有一個Delphi(2007)應用程序,它只是一個標準的exe文件,我想爲它添加一個COM接口。我已經有一個COM DLL,其中導出幾個COM對象,這是完美的。但是,當我試圖從DLL(即「出口」和「{$ R * .TLB}」和相關用途)插入COM邏輯到EXE的dpr文件時,它完全編譯,但拒絕註冊當我調用regsvr32 myname.exe如何編寫一個也是Delphi中的COM服務器的EXE

我也嘗試創建一個全新的VCLForms應用程序,並通過IDE嚮導向它添加一個AutomationObject,但Delphi似乎並不希望我這樣做,因爲沒有可用的activex組件。

甚至有可能做我想做的事情嗎?如果是這樣,有沒有人有任何想法可能會出錯?

感謝

+0

您是否在64位Windows上運行? Vista/7的? – 2010-12-07 12:56:23

+0

是的,我正在運行Windows 7 64位 – Steve 2010-12-07 14:00:20

+0

好像你有你的答案。我的觀點是,在64位Windows上,你必須工作一點才能獲得32位版本的regsvr32。當然,我沒有細枝末節,因爲這是一個exe而不是一個dll,你不需要一個單獨的程序來託管代碼來做self-reg。 – 2010-12-07 20:34:20

回答

7

我不確定regsvr32的工作原理,您需要運行app.exe/regserver或app.exe/unregserver。