// подключаем библиотеку windows.h для доступа к функциям работы с буфером обмена Windows
// подключаем библиотеки iostream и string для работы с потоками ввода-вывода и строками
#include <Windows.h>
#include <iostream>
#include <string>
int main() {
setlocale(LC_ALL, "Russian"); // устанавливаем локаль для вывода сообщений на русском языке
if (OpenClipboard(nullptr)) { // открываем буфер обмена
HANDLE hData = GetClipboardData(CF_TEXT); // получаем данные текстового формата из буфера обмена
char* pchData = static_cast<char*>(GlobalLock(hData)); // блокируем данные и получаем указатель на них
if (pchData != nullptr) { // проверяем, что данные успешно получены
std::string text(pchData); // создаем строку из данных буфера обмена
std::cout << "Текст из буфера обмена: " << text << std::endl; // выводим текст из буфера обмена
}
GlobalUnlock(hData); // разблокируем данные
CloseClipboard(); // закрываем буфер обмена
}
else {
std::cout << "Не удалось открыть буфер обмена" << std::endl; // выводим сообщение об ошибке, если не удалось открыть буфер обмена
}
system("pause"); // ожидание ввода пользователя
return 0;
}