Как написать EXE, который также является COM-сервером в Delphi - PullRequest
5 голосов
/ 07 декабря 2010

У меня есть приложение Delphi (2007), которое является просто стандартным exe, и я хотел бы добавить к нему интерфейс COM.У меня уже есть COM DLL, которая экспортирует несколько объектов COM, и это работает отлично.Однако, когда я попытался вставить логику COM из dll (т. Е. «Export» и «{$ R * .TLB}» и соответствующие варианты использования) в файл dpr EXE-файла, все это прекрасно компилируется, но отказывается регистрироваться, когда я вызываю regsvr32.myname.exe

Я также попытался создать совершенно новое приложение VCLForms и добавить к нему объект AutomationObject с помощью мастеров IDE, но Delphi, похоже, не хочет, чтобы я делал это, поскольку компоненты activex недоступны.

Можно ли даже сделать то, что я пытаюсь?Если так, кто-нибудь имеет какие-либо идеи о том, что может пойти не так?

Спасибо

Ответы [ 2 ]

8 голосов
/ 07 декабря 2010

Я не уверен, что regsvr32 работает, вам нужно запустить app.exe / regserver или app.exe / unregserver.

1 голос
/ 07 декабря 2010

Экспортирует ли ваш exe DllRegisterServer и DllUnregisterServer ?

...