void CopyToClipboardEasy(const std::string& text)
{
if (!OpenClipboard(nullptr))
return;
EmptyClipboard();
HGLOBAL hMem = GlobalAlloc(GMEM_MOVEABLE, text.size() + 1);
if (!hMem)
{
CloseClipboard();
return;
}
char* p = static_cast<char*>(GlobalLock(hMem));
memcpy(p, text.c_str(), text.size() + 1);
GlobalUnlock(hMem);
if (!SetClipboardData(CF_TEXT, hMem))
GlobalFree(hMem);
CloseClipboard();
}
void CopyToClipboard()
{
std::string text;
// Opcjonalnie - zmniejsza liczbę realokacji
int totalLen = 0;
for (int i = 0; i < lineCount; ++i)
{
totalLen += textbuffor[i].GetLen();
if (i < lineCount - 1)
totalLen += 2; // CRLF
}
text.reserve(totalLen);
for (int i = 0; i < lineCount; ++i)
{
text.append(textbuffor[i].GetData(), textbuffor[i].GetLen());
if (i < lineCount - 1)
text += "\r\n";
}
CopyToClipboardEasy(text);
}
CopyToClipboard zwiesza się dlaczego ?
- Rejestracja: dni
- Ostatnio: dni
- Postów: 693
0
- Rejestracja: dni
- Ostatnio: dni
- Postów: 693
1
już mam klawisz ctrl+c zwiesza kod jest dobry koniec wątku