CString -> OLEStr
-
Hallo Leute
Wie konvertiert man einen CString in einen OLEStr
CString strdummy="This is a Test";einsetzen in
(LPOLESTR)OLESTR("This is a test")mit T2OLE(strdummy) geht es irgendwie nicht

Vielen Dank und Gruß
Linus
-
-
Danke für die Antwort
Sieht ganz gut aus
CComPtr<IMalloc> malloc; HRESULT hr = ::CoGetMalloc(1, &malloc); if (FAILED(hr)) { // handle error } LPOLESTR buf = malloc->Alloc(strdummy.GetLength() + 1); if (buf == NULL) { // handle error } wcscpy(buf, _bstr_t(strdummy));Ich bekomme nur den Fehler :
error C2440: 'Initialisierung': 'void *' kann nicht in 'LPOLESTR' konvertiert werdenich verstehe aber die Anweisung
CComPtr<IMalloc> malloc; HRESULT hr = ::CoGetMalloc(1, &malloc);nicht . Vielleicht kann das mir jemand erklären ??
Danke
-
Sicher geht auch T2OLE. Wenn Du VS200x verwendest ist CT2OLE noch besser!
Du kannst auch einfach ein CComBSTR verwenden.
-
CT2OLE
noch nie gehört , aber funktioniert .
(LPOLESTR)CT2OLE(strdummy)klasse und danke
Gruß Linus
-
linus schrieb:
C
(LPOLESTR)CT2OLE(strdummy)Warum der weitere cast? Das ist unnötig verwirrend und kann zu vielen Fehlern führen!