BSTR in char[] oder CString (COM) und umgekehrt



  • (VC++ 6.0 SP5)

    Hallo,

    ich habe im Moment ein Problem:

    Ich habe ein paar Funktionen, deren Übergabeparameter BSTR sind
    (STDMETHODIMP Foobar::getFoobar(BSTR str);) und auf der anderen Seite ein Paar, die diese Funktionen nutzen. Ich bekomme aber ein BSTR/_bstr_t nicht in char [] oder CString und umgekehrt. Die Konstruktoren von _bstr_t sind zwar gut, helfen aber mir nicht weiter. BSTR ist aber wichtiger.

    Am besten waere so eine funktion wie sprintf(mein_bstr, "wert %s %d", string, integer); oder CString::Format(..);

    Weiß da jemand was?



  • CString:AllocSysString
    CString::SetSysString

    😉



  • CMatt schrieb:

    CString:AllocSysString
    CString::SetSysString

    😉

    Danke, probiere das gleich aus..
    habe gerade noch A2BSTR getestet.



  • Ich habe noch eine Frage: _com_error to CString/BSTR/_bstr_t/char[] --> irgendwas.

    Und noch eine:

    #include <ANSIAPI.H>
    #include <comdef.h>
    _bstr_t bsText("Hai Bayram");
    CString strName;
    W2A(bsText, strName.GetBuffer(256), 256);
    strName.ReleaseBuffer();
    AfxMessageBox(strName);
    
    // Wozu ist diese GetModuleFileName Funktion hier??
    char szFileName[256];
    GetModuleFileName(NULL,szFileName,256);
    AfxMessageBox(szFileName);
    

    Dieses Beispiel soll nur _bstr_t to CString zeigen.


Anmelden zum Antworten