Использование объектных интерфейсов из COM |
Полученный idl файл обработать MIDL.exe (MS Visual Studio). В результате получим tlb библиотеку и исходники для proxy dll. Собрать из полученных исходников proxy любым компилятором С++.
Нужно добавить def:
LIBRARY имя.dll DESCRIPTION 'Proxy/Stub DLL' EXPORTS DllGetClassObject @1 PRIVATE DllCanUnloadNow @2 PRIVATE GetProxyDllInfo @3 PRIVATE DllRegisterServer @4 PRIVATE DllUnregisterServer @5 PRIVATE
Полученную Proxy dll и файл с GUID скопировать в каталог с Атлантис-приложением. Например, в каталог с Галактикой.
Зарегистрировать proxy dll с помощью regsrv32.
COM-интерфейс к Атлантис-приложению готов.
Для использования полученного интерфейса необходимо выполнить следующие действия (см. ниже пример использования):
инициировать COM;
получить интерфейс IAtlantisAppSrv;
вызвать его метод Connect (имя,пароль);
загрузить нужный VipInterface методом LoadVip (имя,сcылка на IDispatch);
можно вызывать методы через IDispatch, но лучше привести к ссылке на нужный ObjInterface.
Файл с GUID обязательно должен быть в каталоге с Атлантис-приложением.