Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.09.12;
Скачать: CL | DM;

Вниз

Как зарегистрить ActiveX компонет в runtime?   Найти похожие ветки 

 
anton_private ©   (2002-06-07 15:57) [0]

Как зарегистрить ActiveX компонет в runtime?


 
Дмитрий Баранов ©   (2002-06-07 16:39) [1]

1) WinExec("regsvr32.exe mycomp.ocx", 0)
2) Вызвать DllRegisterServer


 
allrussia ©   (2002-06-08 04:27) [2]

uses Olectl (в папке Lib\Delphi2 лежит)
var
ocx: THandle;
reg: TDllRegisterServer;
begin
ocx:= LoadLibrary("activex.ocx");
reg:= GetProcAddress(ocx,"DllRegisterServer");
if reg = 0 then FreeLibrary(ocx);
end;


 
Сергей2002   (2002-07-01 08:46) [3]

Подскажите кто знает, как загрузить OCX и использовать его функции. В крайнем случае прилинковать к EXE-файлу. Вариации на тему "REGSVR32" не нужны.
OCX следующий: AMOVIE.OCX; функции для использования что-то вроде FileName, Volume и т.д. и т.п.
За ранее спасибо!


 
kig ©   (2002-07-01 12:46) [4]

В минимальном случае In-Proc сервер содержит всего четыре экспортируемые ф-ции:

DllRegisterServer
DllUnregisterServer
DllCanUnloadNow
DllGetClassObject

В Вашем случае Вас интересует последняя, так функции интерфейсов не экспортируются. Через нее Вы получаете интерфейс фабрики IClassFactory. Через IClassFactory.CreateInstance Вы получаете один из интерфейсов, которые реализует этот объект. Т.е Вы иммитируете работу CoCreateInstance. Далее работаете с этим интерфейсом, примерно так же, как если бы подняли этот объект через COM.
Перед выгрузкой Вам необходимо освободить все интерфейсы, включая IClassFactory, а затем вызвать DllCanUnloadNow.

см. также описание CoGetClassObject.




Страницы: 1 вся ветка

Текущий архив: 2002.09.12;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.015 c
3-35602
Speaker
2002-08-22 13:15
2002.09.12
Вопрос по DOA: начало транзакции


7-35923
anton_private
2002-06-07 15:57
2002.09.12
Как зарегистрить ActiveX компонет в runtime?


1-35638
SomeQ
2002-09-01 10:08
2002.09.12
FindNext in RichEdit


7-35924
Max2000
2002-07-03 11:02
2002.09.12
Принтер!!!!!


1-35650
DenKop
2002-08-29 16:17
2002.09.12
Как в WinXP выключить компьютер