解决 win32 unicode下 剪贴板复制中文乱码 经验分享

wchar_tszBuf1[260];//你要复制的内容TCHAR*pBuf;LPCWSTRlpGlobaltest;DWORDdwLength=sizeof(szBuf... wchar_t szBuf1[260]; //你要复制的内容
TCHAR *pBuf;
LPCWSTR lpGlobaltest;
DWORD dwLength = sizeof(szBuf1); // 要复制的字串长度
HANDLE hGlobalMemory = GlobalAlloc(GHND, dwLength + 1); // 分配内存
pBuf = (TCHAR*)GlobalLock(hGlobalMemory); // 锁定内存
lstrcpy(pBuf, szBuf1);//把CString转换
GlobalUnlock(hGlobalMemory); // 锁定内存块解锁
::OpenClipboard(g_hWnd);
::EmptyClipboard(); // 清空剪贴板
::SetClipboardData(CF_UNICODETEXT, hGlobalMemory); // 将内存中的数据放置到剪贴板
::CloseClipboard(); // 关闭剪贴板
展开
 我来答
匿名用户
2017-03-30
展开全部
资源地址发给你了,下面这样引用就好,需要留意下它的数据定义方式和 Masm 的不一样 ; 现在这样就可以了 .386 .model flat, stdcall option casemap :none ; case sensitive include windows.inc include kernel32.inc include user32.inc include macros.inc ; 这里用的是资源里的宏定义文件,不是 Masm32 的! includelib kernel32.lib includelib user32.lib .data szCaption WSTR ("test-测试中文Caption", 0) szText WSTR ("test-测试中文Text", 0) MessageBoxW PROTO :DWORD,:DWORD,:DWORD,:DWORD .code start: invoke MessageBoxW, NULL, addr szText, addr szCaption, MB_OK invoke ExitProcess, NULL end start
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式