установить (и использовать) компонент COM в приложении Delphi, как я запускаю exe - PullRequest
1 голос
/ 26 июля 2010

Я пытаюсь решить преобразование документа в pdf, как описано здесь .

Поскольку нет компонента Delphi (с исходным кодом), который создает pdf из doc, мне было интересно, как можно "зарегистрировать COM во время выполнения".

Я НЕ ИСПОЛЬЗУЮ УСТАНОВКУ, я просто разверну исполняемый файл. Таким образом, идея состояла в том, чтобы просто поместить ActiveX dll в ресурсы и зарегистрировать его при запуске программы (или при первом использовании). В любом случае наверняка это создаст проблемы в Vista или 7 ... Кто-нибудь может подсказать, как это можно сделать?

Имейте в виду, что я хочу сохранить развертывание очень легким = заменить exe.

КОММЕНТАРИЙ : Конечно, если бы для этого был компонент Delphi, у меня не было бы проблем, поскольку эта функциональность уже была бы в exe.

Ответы [ 4 ]

2 голосов
/ 27 июля 2010

Вы также можете использовать Registration Free Com, указав зависимость в манифесте exe. Некоторые ссылки:

Создание файлов манифеста для свободной регистрации COM http://msdn.microsoft.com/en-us/magazine/cc188708.aspx

2 голосов
/ 26 июля 2010

Vista и более поздние версии поддерживают элемент управления ActiveX без прав администратора (или элемент управления ActiveX для каждого пользователя): http://msdn.microsoft.com/en-us/library/dd433049(VS.85).aspx

1 голос
/ 27 июля 2010

Будете ли вы рассматривать коммерческий компонент?Если это так, BoxedApp SDK позволит вам делать именно то, что вы описываете в своем вопросе (и более), не беспокоясь о UAC или чем-либо еще.Он отлично работает с Delphi и .NET.

Он поставляется с примером Delphi о том, как запустить флэш-фильм, связав Flash OCX и зарегистрировав его во время выполнения.

1 голос
/ 26 июля 2010

Обычно серверы EXE OLE поставляются со стандартным переключателем командной строки / RegServer - попробуйте запустить exe с этим

...