Zum Inhalt springen

OCX macht was es will


Babybaer

Empfohlene Beiträge

Hallo Leute,

ich habe eine ActiveX Control eingebunden und wenn ich auf die Methoden der OCX zugreife, bricht mir alles zusammen. Ich habe auch CoInitialize((LPVOID)0) zuvorgemacht, hier bekomme ich schon als Returnvalue S_FALSE zurück, keine Ahnung warum. Die ole32.lib habe ich auch drin und auch das vorgegebene Header habe ich. HILFE

VC++ 7.1 habe ich im Einsatz.

Link zu diesem Kommentar
Auf anderen Seiten teilen

wenn ich auf die Methoden der OCX zugreife, bricht mir alles zusammen.
Geht's ein wenig genauer? Unter "bricht alles zusammen" kann ich mir nichts vorstellen.

Ich habe auch CoInitialize((LPVOID)0) zuvorgemacht, hier bekomme ich schon als Returnvalue S_FALSE zurück, keine Ahnung warum.
S_FALSE bedeutet hier, dass COM für diesen Thread bereits initialisiert wurde. Also kein Problem.
Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich habe eine exe in der ich eine OCX eingebunden habe. (Nicht über den Dialog) Hinzufügen Klasse AktiveX Control ... . Das VC++ Studio generiert dann eine (oder auch mehrere ) Klasse mit den Methoden aus der OCX. Ich kann also auch eine Objekt erzeugen und die Methoden aufrufen.

die Methode:

long Install(LPCTSTR strProduct)

{

long result;

static BYTE parms[] = VTS_BSTR ;

InvokeHelper(0x1, DISPATCH_METHOD, VT_I4, (void*)&result, parms, strProduct);

return result;

}

---

hier Absturz in winocc.cpp

m_pCtrlSite ist NULL; Warum?

/////////////////////////////////////////////////////////////////////////////

// CWnd invoke helpers for OLE Control wrappers

void AFX_CDECL CWnd::InvokeHelper(DISPID dwDispID, WORD wFlags, VARTYPE vtRet,

void* pvRet, const BYTE* pbParamInfo, ...)

{

ASSERT(m_pCtrlSite != NULL); // not an OLE control (not yet, at least)

if (m_pCtrlSite == NULL)

return;

va_list argList;

va_start(argList, pbParamInfo);

m_pCtrlSite->InvokeHelperV(dwDispID, wFlags, vtRet, pvRet, pbParamInfo,

argList);

va_end(argList);

}

---

Fehlermeldung:

Debug Assertion Failed!

File: winocc.cpp

Line 374

...

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ziel: Ich möchte in eine Exe, ohne einen Dialog zu nutzen, ein ActiveX Control (OCX) einbinden.

Bestand: Habe eine OCX die 3 Methoden nach außen gibt. Eine Exe in der ich die OCX eingebunden habe mit Hilfe der VC++ Studios 7.1. Assi.

Klasse hinzufügen, MFC ActiveX Control, usw...

Es wurde eine Class angelegt, mit der ich die Methoden der OCX benutzen kann. Habe dann ein Objekt erzeugt und die Methode gerufen...

Fehler: m_pCtrlSite == NULL in der winocc.cpp

Was habe ich vergessen. Liegt es daran das die Class, die vom Assi angelegt wurde, von Wnd abgeleitet ist? Oder habe ich ein Create.. vergessen. Habe so was noch nie gemacht immer über einen Dlg.

/////////////////////////////////////////////////////////////////////////////

// CWnd invoke helpers for OLE Control wrappers

void AFX_CDECL CWnd::InvokeHelper(DISPID dwDispID, WORD wFlags, VARTYPE vtRet,

void* pvRet, const BYTE* pbParamInfo, ...)

{

--> FEHLER hier --->>> ASSERT(m_pCtrlSite != NULL); // not an OLE control (not yet, at least)

if (m_pCtrlSite == NULL)

return;

va_list argList;

va_start(argList, pbParamInfo);

m_pCtrlSite->InvokeHelperV(dwDispID, wFlags, vtRet, pvRet, pbParamInfo,

argList);

va_end(argList);

}

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...