Я добавляю этот код в свое приложение на C++, но больше не могу его запускать:
void setclipbord(const char* szBuffer)
{
OpenClipboard(NULL);
HGLOBAL hClipboardData = GlobalAlloc(GMEM_MOVEABLE, strlen(szBuffer) + 1);
char* pchData = (char*)GlobalLock(hClipboardData);
strcpy(pchData, szBuffer);
GlobalUnlock(hClipboardData);
EmptyClipboard();
SetClipboardData(CF_TEXT, hClipboardData);
CloseClipboard();
}
Я использую последнюю версию Visual Studio 2022, и она сообщает об 1 ошибке и 2 предупреждениях:
Предупреждение ' hClipboardData» может иметь значение «0» и является копией значения, найденного в «GlobalAlloc()`169»: это не соответствует спецификации функции «GlobalLock».
Предупреждение: «pchData» может иметь значение «0»: это не соответствует спецификации функции «strcpy».
Ошибка «strcpy»: эта функция или переменная могут быть небезопасными. Вместо этого рассмотрите возможность использования strcpy_s. Чтобы отключить устаревание, используйте _CRT_SECURE_NO_WARNINGS. Подробности смотрите в онлайн-справке.
Я использую следующие библиотеки:
#include
#include
#include
#include
#include
#include
Подробнее здесь: https://stackoverflow.com/questions/784 ... -this-code