Da C++ istanzio la COM in questo modo:
codice:
int DBInitialize ()
{
IDbInterfacePtr ptrDB = NULL;
HRESULT hr=NULL;
try
{
hr = ptrDB.CreateInstance (L"OSNETDBInterface.DBInterface");
if (FAILED (hr)){
_com_raise_error (hr);
DEBUG_OPEN("%s","(DB Module) Initialization COM failed");
}
ptrDB->Init(configIDInstance);
DEBUG_OPEN("%s","(DB Module) Initialization COM successfull");
}
catch (_com_error &e) {
strMessage.Format ("(DBInitialize) Caught COM Error: " \
"(HRESULT Code) %08lx - (Win32 code meaning) %s - (Description) %s - ",
e.Error (),
e.ErrorMessage (),
e.Description ());
DEBUG_OPEN ("%s", strMessage.GetBuffer (0));
}