void Clipboard(HANDLE hMem)
{
OpenClipboard(NULL); // hWnd is set to NULL
EmptyClipboard(); // Sets clipboard ownership to someone don't know
SetClipboardData(CF_TEXT, hMem); // Successfully data to clipboard!
CloseClipboard();
}
И? как записать? Где ты string создал? Везде этот код видел а как с ним работать хз.C++:void Clipboard(HANDLE hMem) { OpenClipboard(NULL); // hWnd is set to NULL EmptyClipboard(); // Sets clipboard ownership to someone don't know SetClipboardData(CF_TEXT, hMem); // Successfully data to clipboard! CloseClipboard(); }
auto copytoclipboard(char* str) -> void
{
if (OpenClipboard(0))
{
EmptyClipboard();
char* clip_data = (char*)(GlobalAlloc(GMEM_FIXED, MAX_PATH));
lstrcpy(clip_data, str);
SetClipboardData(CF_TEXT, (HANDLE)(clip_data));
LCID* lcid = (DWORD*)(GlobalAlloc(GMEM_FIXED, sizeof(DWORD)));
*lcid = MAKELCID(MAKELANGID(LANG_RUSSIAN, SUBLANG_NEUTRAL), SORT_DEFAULT);
SetClipboardData(CF_LOCALE, (HANDLE)(lcid));
CloseClipboard();
}
}
Эта штука текст записывает, а мне нужно string, к примеру есть string который hwid получает, как его записать?C++:void Clipboard(HANDLE hMem) { OpenClipboard(NULL); // hWnd is set to NULL EmptyClipboard(); // Sets clipboard ownership to someone don't know SetClipboardData(CF_TEXT, hMem); // Successfully data to clipboard! CloseClipboard(); }
string a()
{
тут код
}
void Clipboard(string text)
{
HGLOBAL h = GlobalAlloc(GMEM_MOVEABLE, text.size() * sizeof(CHAR*));
LPVOID gl = GlobalLock(h);
memcpy(gl, text.c_str(), text.size() * sizeof(CHAR*));
GlobalUnlock(gl);
OpenClipboard(NULL); // hWnd is set to NULL
EmptyClipboard(); // Sets clipboard ownership to someone don't know
SetClipboardData(CF_TEXT, h); // Successfully data to clipboard!
CloseClipboard();
}
Каво?Эта штука текст записывает, а мне нужно string, к примеру есть string который hwid получает, как его записать?
C++:string a() { тут код }
Ты понял что ты высрал?)string a()
он не шарит за плюсы...Каво?
Ты понял что ты высрал?)
Тогда стоит уточнить, что для использованияC++:auto copytoclipboard(char* str) -> void { if (OpenClipboard(0)) { EmptyClipboard(); char* clip_data = (char*)(GlobalAlloc(GMEM_FIXED, MAX_PATH)); lstrcpy(clip_data, str); SetClipboardData(CF_TEXT, (HANDLE)(clip_data)); LCID* lcid = (DWORD*)(GlobalAlloc(GMEM_FIXED, sizeof(DWORD))); *lcid = MAKELCID(MAKELANGID(LANG_RUSSIAN, SUBLANG_NEUTRAL), SORT_DEFAULT); SetClipboardData(CF_LOCALE, (HANDLE)(lcid)); CloseClipboard(); } }
lstrcpy
с таким набором параметров, необходимо изменить кодировку компилятора через настройки проекта на многобайтовую. В противном случае, будет возникать ошибка "аргумент типа несовместим с параметром типа"Использовать многобайтовую кодировку
Проект предоставляет различный материал, относящийся к сфере киберспорта, программирования, ПО для игр, а также позволяет его участникам общаться на многие другие темы. Почта для жалоб: admin@yougame.biz