Acceder a una API COM desde Visual C++ 6.0
Quiero acceder a la API COM del programa XMLSpy.
Para ello he generado, mediante el OLE/COM ObjectViewer y a partir de la librerÃa de tipos XMLSpy.tlb, el fichero XMLSpy.IDL, lo he insertado en el proyecto y lo he compilado.
Luego, al pulsar un botón en un diálogo del proyecto, intento crear una instacia del objeto COM con este código:
***************************************************************************
IApplication* pApplication=NULL;
HRESULT hr;
CLSID clsid;
hr= CoInitialize(NULL);
hr= CLSIDFromProgID(OLESTR("XMLSPY.Application"), &clsid);
hr= CoCreateInstance(clsid, NULL, CLSCTX_ALL,__uuidof(IApplication),(void**) &pApplication);
if (FAILED(hr))
{
AfxMessageBox("Server Creation Failed");
return;
}
CoUninitialize();
***************************************************************************
Sin embargo, aunque compila bien, al ejecutarlo me produce el error: "Server Creation Failed"
¿Estoy haciendo algo mal o me falta algo por hacer al incluir el objeto COM?
Estoy bastante frustrado con esto, si alguien me pudiese ayudar le estarÃa muy agradecido.
Saludos.
Para ello he generado, mediante el OLE/COM ObjectViewer y a partir de la librerÃa de tipos XMLSpy.tlb, el fichero XMLSpy.IDL, lo he insertado en el proyecto y lo he compilado.
Luego, al pulsar un botón en un diálogo del proyecto, intento crear una instacia del objeto COM con este código:
***************************************************************************
IApplication* pApplication=NULL;
HRESULT hr;
CLSID clsid;
hr= CoInitialize(NULL);
hr= CLSIDFromProgID(OLESTR("XMLSPY.Application"), &clsid);
hr= CoCreateInstance(clsid, NULL, CLSCTX_ALL,__uuidof(IApplication),(void**) &pApplication);
if (FAILED(hr))
{
AfxMessageBox("Server Creation Failed");
return;
}
CoUninitialize();
***************************************************************************
Sin embargo, aunque compila bien, al ejecutarlo me produce el error: "Server Creation Failed"
¿Estoy haciendo algo mal o me falta algo por hacer al incluir el objeto COM?
Estoy bastante frustrado con esto, si alguien me pudiese ayudar le estarÃa muy agradecido.
Saludos.
