DLL registry fail
-
Guten Morgen,
hab folgendes Problem,
ich hatte eine C# DLl erfolgreich in meinen C++ Code eingebunden, lief auch 1-2 Monate ohne Probleme, doch nun kommt immer bei der Dll ini,
"Unbehandelte Ausnahme in Test.exe (Kernel32.dll): 0xE06D7363: Microsoft C++ Exception."TestDll::_Class1 *pptr; CoInitialize(NULL); TestDll::_Class1Ptr Class1(__uuidof(TestDll::Class1));
In der dritten zeile kommt der Fehler, dort wird das aufgerufen:
// Calls CoCreateClass with the provided CLSID retrieved from // the string. // explicit _com_ptr_t(LPOLESTR str, IUnknown* pOuter = NULL, DWORD dwClsContext = CLSCTX_ALL) throw(_com_error) : m_pInterface(NULL) { HRESULT hr = CreateInstance(str, pOuter, dwClsContext); if (FAILED(hr) && (hr != E_NOINTERFACE)) { _com_issue_error(hr); } }
Und hr ist -2147221164 was ja eig. dafür steht das die DLL nicht registriert ist.
#pragma once #pragma pack(push, 8) #include <comdef.h> namespace TestDll { // // Forward references and typedefs // struct /* coclass */ Class1; struct /* coclass */ Form1; struct __declspec(uuid("e23ac472-8681-33c0-b7a7-8821a7232a80")) /* dual interface */ _Class1; struct __declspec(uuid("fd5244c6-3a9c-376c-b4ef-53fa4a11fccf")) /* dual interface */ _Form1; // // Smart pointer typedef declarations // _COM_SMARTPTR_TYPEDEF(_Class1, __uuidof(_Class1)); _COM_SMARTPTR_TYPEDEF(_Form1, __uuidof(_Form1)); // // Type library items // struct __declspec(uuid("2108c612-b6af-3c7b-badd-5395212d7d12")) Class1; // [ default ] interface _Class1 // interface _Object struct __declspec(uuid("f9ec5f74-2981-3188-974c-a6d22b3e54a8")) Form1; // [ default ] interface _Form1 // interface _Object // interface IComponent // interface IDisposable // interface IWin32Window struct __declspec(uuid("e23ac472-8681-33c0-b7a7-8821a7232a80")) _Class1 : IDispatch { // // Raw methods provided by interface // virtual HRESULT __stdcall get_ToString ( BSTR * pRetVal ) = 0; virtual HRESULT __stdcall Equals ( VARIANT obj, VARIANT_BOOL * pRetVal ) = 0; virtual HRESULT __stdcall GetHashCode ( long * pRetVal ) = 0; virtual HRESULT __stdcall GetType ( struct _Type * * pRetVal ) = 0; virtual HRESULT __stdcall Testtest ( ) = 0; virtual HRESULT __stdcall TestGo ( BSTR strOutPath ) = 0; virtual HRESULT __stdcall get_strPfad ( BSTR * pRetVal ) = 0; virtual HRESULT __stdcall put_strPfad ( BSTR pRetVal ) = 0; virtual HRESULT __stdcall get_strPfadklein ( BSTR * pRetVal ) = 0; virtual HRESULT __stdcall put_strPfadklein ( BSTR pRetVal ) = 0; }; struct __declspec(uuid("fd5244c6-3a9c-376c-b4ef-53fa4a11fccf")) _Form1 : IDispatch {}; } // namespace TestDll #pragma pack(pop)
In der Registry stehen:
TestDll.Class1 -> CLSID -> {2108C612-B6AF-3C7B-BADD-5395212D7D12} TestDll.Form1 -> CLSID -> {F9EC5F74-2981-3188-974C-A6D22B3E54A8}
Kann mir jm. helfen?
Mfg
Sgrab
-
Dieser Thread wurde von Moderator/in SeppJ aus dem Forum C++ (auch C++0x) in das Forum Compiler- und IDE-Forum verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.