skycofox14 2014-07-07 08:51
浏览 1416

关于剪切板中UNICODE的问题

void CMy001Dlg::OnBnClickedButton1()
{
if(this->OpenClipboard())

{

CString str =_T("剪切板内容!¥#");

wchar_t * pBuf;

EmptyClipboard(); ;

HGLOBAL hClip = (wchar_t )GlobalAlloc(GHND,sizeof(wchar_t) + str.GetLength()*2);

pBuf = (wchar_t
)GlobalLock(hClip);

wcscpy(pBuf,str);

GlobalUnlock(hClip);

SetClipboardData(CF_TEXT,hClip);

CloseClipboard();

}
if(OpenClipboard())

{

if(IsClipboardFormatAvailable(CF_UNICODETEXT))

{

HANDLE hClip = GetClipboardData(CF_TEXT);

wchar_t * pBuf =(wchar_t*) GlobalLock(hClip);

AfxMessageBox(pBuf);
}

CloseClipboard();

}

}
代码如上,
为何在向剪切板SetClipboardData(CF_TEXT) CF_TEXT格式
而进行判断的时候 IsClipboardFormatAvailable(CF_UNICODETEXT) CF_UNICODETEXT格式。
返回值为何会是TRUE? 这两个格式一样么?
CF_TEXT格式被标注为ANSI, ANSI和ASCII 有什么区别

  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥15 素材场景中光线烘焙后灯光失效
    • ¥15 请教一下各位,为什么我这个没有实现模拟点击
    • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
    • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
    • ¥20 有关区间dp的问题求解
    • ¥15 多电路系统共用电源的串扰问题
    • ¥15 slam rangenet++配置
    • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
    • ¥15 ubuntu子系统密码忘记
    • ¥15 保护模式-系统加载-段寄存器