CString vektort másolni clipboardba C++ MFC

CString vektort másolni clipboardba C++ MFC
2011-07-15T14:43:52+02:00
2011-07-17T18:02:59+02:00
2022-11-22T12:30:34+01:00
sapi
Sziasztok,
szeretném egy CString vektor tartalmát bemásolni a Clipbordba. Tud valaki segíteni hogy kell?
Próbálkozásom van rá, ha valaki segít müködö képessé tenni megköszönöm.

vector<CString>vTest;
vTest.clear();
vTest.push_back("Elsö");
vTest.push_back("Második");
vTest.push_back("Harmadik");

OpenClipboard();

EmptyClipboard();

HGLOBAL GlobalHandle;

UINT BytesToCopy = vTest.size() + 1;

GlobalHandle = GlobalAlloc(GMEM_MOVEABLE,BytesToCopy);

if(GlobalHandle != NULL)
{
BYTE *StringPointer(BYTE*)GlobalLock(GlobalHandle);

vector<CString>::pointer ptr = &vTest[0];

memcpy(StringPointer, *ptr, BytesToCopy);

GlobalUnlock(GlobalHandle);

SetClipboardData(CF_TEXT, GlobalHandle);

}
CloseClipboard();

Ez így fordul, de csak annyit másol be ctrl-V .re, hogy "Els".
Nekem nincs tippem ....
Mutasd a teljes hozzászólást!
Ezt nem pontosan értem... talán unicode lesz belőle?

Más:

volt: memcpy(StringPointer,*ptr, kliplen);
lett: memcpy(StringPointer, klipdata, kliplen);
Mutasd a teljes hozzászólást!

Tetszett amit olvastál? Szeretnél a jövőben is értesülni a hasonló érdekességekről?
abcd