denilen edilmemiştir.CoInitialize() C istisnalar ++
- Projem yapısı
İşte benim porblem olduğunu. Ben bir COM dll, C# ile geliştirilen MCLWrapper.dll var; MCLWrapper.dll çağırır bir yerel yerli C++ dll, ThorDetectorSwitch.dll var; Son olarak, ThorDetectorSwitch.dll adlı bir konsol uygulaması TDSTest.exe var. Temelde, böyle bir şey:
TDSTest.exe (C++ konsol) -> ThorDetectorSwitch.dll (C++ yerli) -> MCLWrapper.dll (C#)
Kod TDSTest.exe o yükler ThorDetectorSwitch.dll:
ThorDetectorSwitch::ThorDetectorSwitch() : _mcSwitch(__uuidof(MCLControlClass))
{
_A = WstringToBSTR(L"A");
_B = WstringToBSTR(L"B");
_C = WstringToBSTR(L"C");
_D = WstringToBSTR(L"D");
_deviceDetected = FALSE;
}
ThorDetectorSwitch.cpp
yılında
HINSTANCE hInst = LoadLibrary(_T("C:\\TIS_Nick\\Hardware\\Devices\\ThorDetectorSwitch\\TDSTest\\TDSTest\\Debug\\Modules_Native\\ThorDetectorSwitch.dll"));
Oluşturucu
kırılma noktası yukarıda ThorDetectorSwitch.dll yapıcısı ilk parantez vurur ama comip içinde
hr = CoCreateInstance(rclsid, pOuter, dwClsContext, __uuidof(IUnknown), reinterpret_cast<void**>(&pIUnknown));
için F10 (bir adım daha)
Bu atlar isabet eğer istisna hemen oluştu .h. İk sadece "CoInitialize çağrılmadı".
Bu amblemi günlerce düşünüyorum ve bir çözüm bulamıyorum. Buradaki herkes herhangi bir düşünceyi paylaşabilir mi? Gerçekten takdir ediyorum.
Sana() '' Coınitialize çağırmak gerek. * Kaynak: "CoInitialize() çağrılmadı" hata iletisi çıldırdı "* –
@LuchianGrigore Ben Reed denilen CoInitialize() çağırdı, ama başka bir sorun var. Benim yorumlarımı Reed'in gör. –