Господа, я только начал знакомится с использованием ActiveX и возник затык.
У меня есть зарегестрированный компонент написный на ВБ6.
Я хочу подключать его динамически (самое позднее связывание) и использовать его функционал.
С подключением вроде разобрался и сделал так:
HRESULT hr = CoInitialize(NULL);
if(FAILED(hr))
{
MessageBox("It is impossible to initialize COM!", "Error!", 0);
return;
}
CLSID cls77;
hr = CLSIDFromProgID(L"MyActiveX.AntItsClass", &cls77);
if(FAILED(hr))
{
MessageBox("ActiveX object is not available. Try to re-install it", "Error!", 0);
CoUninitialize();
return;
}
IDispatch *pvObject;
hr = CoCreateInstance(cls77, NULL, CLSCTX_INPROC_SERVER, IID_IDispatch, (void**)&pvObject);
if(FAILED(hr) || !pvObject)
{
MessageBox("It is impossible to initialize interface", "Error", 0);
CoUninitialize();
return;
}
// TODO: Paste your mega code for ActiveX using here
pvObject->Release();
Так вот, проблема в следующем: А как мне теперь использовать(вызывать) методы этого компонента? Как получить доступ к свойствам?
Заранее спасибо всем кто поможет....
Здравствуйте, Tristania, Вы писали:
T>Господа, я только начал знакомится с использованием ActiveX и возник затык.
T>У меня есть зарегестрированный компонент написный на ВБ6.
T>Я хочу подключать его динамически (самое позднее связывание) и использовать его функционал.
T>С подключением вроде разобрался и сделал так:
T>T>HRESULT hr = CoInitialize(NULL);
T>if(FAILED(hr))
T>{
T> MessageBox("It is impossible to initialize COM!", "Error!", 0);
T> return;
T>}
T>CLSID cls77;
T>hr = CLSIDFromProgID(L"MyActiveX.AntItsClass", &cls77);
T>if(FAILED(hr))
T>{
T> MessageBox("ActiveX object is not available. Try to re-install it", "Error!", 0);
T> CoUninitialize();
T> return;
T>}
T>IDispatch *pvObject;
T>hr = CoCreateInstance(cls77, NULL, CLSCTX_INPROC_SERVER, IID_IDispatch, (void**)&pvObject);
T>if(FAILED(hr) || !pvObject)
T>{
T> MessageBox("It is impossible to initialize interface", "Error", 0);
T> CoUninitialize();
T> return;
T>}
T>// TODO: Paste your mega code for ActiveX using here
T>pvObject->Release();
T>
T>Так вот, проблема в следующем: А как мне теперь использовать(вызывать) методы этого компонента? Как получить доступ к свойствам?
T>Заранее спасибо всем кто поможет....
Все, господа, вопросе решен, ветку можно считть закрытой