Страница: 1 |
Подскажите плз., как скопировать текст в буфер обмена с помошью WinAPI.
//копирование строки в буфер обмена BOOL TextToClipboard(HWND hwnd, char* str) { if (OpenClipboard(hwnd))//открываем буфер обмена { if (EmptyClipboard())//очищаем буфер обмена { HGLOBAL clipbuffer;//буфер для хранения строки char * buffer;//строка, помещаемая в буфер clipbuffer = GlobalAlloc(GMEM_DDESHARE|GMEM_MOVEABLE, strlen(str)+1);//выделяем память buffer = (char*)GlobalLock(clipbuffer); //блокируем доступ к выделенной памяти strcpy(buffer, str);//копируем строку GlobalUnlock(clipbuffer);//разблокируем память SetClipboardData(CF_TEXT,clipbuffer);//записываем строку в буферобмена if (!CloseClipboard()) return FALSE;//закрываем буферобмена } else return FALSE; } else return FALSE; return TRUE; } Вот код, он работает, может кому пригодиться... Правда он на Си, но переделать на любой другой язык не составит труда, т.к. тут практически только АПИ Страница: 1 |
Вопрос: Буфер обмена WinAPI
Добавлено: 20.09.03 09:30
Автор вопроса: Chill | ICQ: 554200
Ответы
Всего ответов: 2
Номер ответа: 1
Автор ответа:
Павел
Администратор
ICQ: 326066673
Вопросов: 368
Ответов: 5968
Web-сайт:
Профиль | | #1
Добавлено: 21.09.03 17:12
Думаю, стоит поискать функции типа SetClipboardText или что-то типа
того.
Номер ответа: 2
Автор ответа:
Chill
ICQ: 554200
Вопросов: 101
Ответов: 343
Профиль | | #2
Добавлено: 22.09.03 01:07