如何在c ++中将文本复制到clipborad?

时间:2017-08-12 20:45:13

标签: c++ clipboard copy-paste

我是c ++的新程序员,我无法理解如何使用剪贴板复制和粘贴任何其他带文本的程序。请举例?

我正在使用Code :: Blocks 16.01 MinGW32 g ++ windows 10。

1 个答案:

答案 0 :(得分:3)

SetClipboardData应该处理它。

glob = GlobalAlloc(GMEM_FIXED,32);
memcpy(glob,"it works",9);

OpenClipboard(hWnd);
EmptyClipboard();
SetClipboardData(CF_TEXT,glob);
CloseClipboard();

修改

这将从剪贴板中获取数据,并在string中返回该数据。

std::string GetClipboardText()
{
    OpenClipboard(nullptr);
    HANDLE hData = GetClipboardData(CF_TEXT);

    char * pszText = static_cast<char*>( GlobalLock(hData) );
    std::string text( pszText );

    GlobalUnlock( hData );
    CloseClipboard();

    return text;
}