C++ 将字符串输出到QQ聊天框内
  • 板块学术版
  • 楼主DeusExMachina
  • 当前回复6
  • 已保存回复6
  • 发布时间2021/10/3 15:31
  • 上次更新2023/11/4 05:02:02
查看原帖
C++ 将字符串输出到QQ聊天框内
361833
DeusExMachina楼主2021/10/3 15:31

除了将 string 放入剪贴板再用 keybd_event 粘贴出去的方法之外,还有没有什么别的方法了?亲测剪贴板方法会输出乱码。

或者,想不输出乱码,需要注意什么?

函数:

bool CopyToClipboard(const char* pszData, const int nDataLen) {
    if(OpenClipboard(NULL)) {
        ::EmptyClipboard();
        HGLOBAL clipbuffer;
        char *buffer;
        clipbuffer = GlobalAlloc(GMEM_DDESHARE, nDataLen+1);
        buffer = (char *)GlobalLock(clipbuffer);
        strcpy(buffer, pszData);
        GlobalUnlock(clipbuffer);
        SetClipboardData(CF_TEXT, clipbuffer);
        CloseClipboard();
        return TRUE;
    }
    return FALSE;
}

使用方法:

string q = "Hello World!";
CopyToClipboard (q.c_str (), q.size ());
2021/10/3 15:31
加载中...