Hallo Leute,
ich habe im BCB5 einen COM-Server als Exe und einen Client als DLL , die von einer weiteren Exe geladen und genutzt wird. Alles prima soweit.
Nun habe ich den Kram in den C++ Builder 2010 hinübergebracht und der selbe Code läuft nicht mehr.
im Client teste ich die COM-Objektregistrierung mit
und bekomme zurück:
REGDB_E_CLASSNOTREG: "Also can indicate that the type of server you requested in the CLSCTX enumeration is not registered or the values for the server types in the registry are corrupt."
Das hilft mir nicht weiter, zumal ich im Server nach der Registrierung die Funktion mit dem Parameter CLSCTX_INPROC_SERVER aufrufe und hr == S_OK erhalte.
BCB5 läuft unter Windows 2000 und CB2010 unter Windows 7 Prof 64Bit. Im CB2010 läuft es weder in noch außerhalb der IDE.
Hoffnungsvoll
Bernd
ich habe im BCB5 einen COM-Server als Exe und einen Client als DLL , die von einer weiteren Exe geladen und genutzt wird. Alles prima soweit.
Nun habe ich den Kram in den C++ Builder 2010 hinübergebracht und der selbe Code läuft nicht mehr.
im Client teste ich die COM-Objektregistrierung mit
Code:
Mk_tlb::TCOMIMK_Main comobj; // My COM-Interface HRESULT hr = CoCreateInstance( Mk_tlb::CLSID_MK_Main, NULL, CLSCTX_LOCAL_SERVER, Mk_tlb::IID_IMK_Main, (void**) &comobj );
REGDB_E_CLASSNOTREG: "Also can indicate that the type of server you requested in the CLSCTX enumeration is not registered or the values for the server types in the registry are corrupt."
Das hilft mir nicht weiter, zumal ich im Server nach der Registrierung die Funktion mit dem Parameter CLSCTX_INPROC_SERVER aufrufe und hr == S_OK erhalte.
BCB5 läuft unter Windows 2000 und CB2010 unter Windows 7 Prof 64Bit. Im CB2010 läuft es weder in noch außerhalb der IDE.
Hoffnungsvoll
Bernd