使用ClipboardSetData函数设置远程计算机剪贴板的内容

时间:2019-05-17 10:02:03

标签: c++ c freerdp

我的任务是从Web应用程序将文本剪贴板数据发送到连接WfreeRDP的远程计算机的剪贴板,并且不知道在哪里查找。

WFreeRDP有一个TestClipboardFormats.c,它看起来像我需要的,并具有一个SetClipboardDataGetClipboardData我已经设法开始工作的功能(根据调试控制台的输出)至少)

BOOL bSuccess;
UINT32 SrcSize;
UINT32 DstSize;

const char* pSrcData = commandArgs.c_str();

char* pDstData;

textHtmlStringFormatId = ClipboardRegisterFormat(clipboard, "CF_TEXT");
utf8StringFormatId = ClipboardRegisterFormat(clipboard, "UTF8_STRING");

SrcSize = (UINT32)(strlen(pSrcData) + 1);

bSuccess = ClipboardSetData(clipboard, textHtmlStringFormatId, pSrcData, SrcSize);

fprintf(stderr, "ClipboardSetData: %d\n", bSuccess);

DstSize = 0;

pDstData = (char*)ClipboardGetData(clipboard, textHtmlStringFormatId, &DstSize);

fprintf(stderr, "ClipboardGetData: %s\n", pDstData);

free(pDstData);

我有点希望远程机器的剪贴板将填充我发送的数据,因为可以成功地使用GetClipboardData检索它,但是右键单击远程机器不会产生任何结果。

我使用正确的方法吗?还是可能使用不正确?

0 个答案:

没有答案