Skip to content

Commit e1fb4af

Browse files
committed
fixed:copy serial number incorrect
1 parent 58548cf commit e1fb4af

File tree

1 file changed

+7
-3
lines changed

1 file changed

+7
-3
lines changed

XEngine_Source/AuthorizeModule_Help/AuthHelp_ClipBoard/AuthHelp_ClipBoard.cpp

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -68,17 +68,21 @@ bool CAuthHelp_ClipBoard::AuthHelp_ClipBoard_Set(LPCTSTR lpszMsgBuffer, int nMsg
6868
}
6969
HANDLE hGlobal = INVALID_HANDLE_VALUE;
7070
//GlobalAlloc 是分配指定的内存空间 单位为字节
71-
hGlobal = GlobalAlloc(GHND, nMsgLen + 1);
71+
hGlobal = GlobalAlloc(GMEM_MOVEABLE, nMsgLen * sizeof(TCHAR) + 1);
7272
if (NULL == hGlobal)
7373
{
7474
Help_IsErrorOccur = true;
7575
Help_dwErrorCode = ERROR_AUTHORIZE_MODULE_HELP_CLIPBOARD_MALLOC;
7676
return false;
7777
}
7878
TCHAR* ptszBuffer = (TCHAR*)GlobalLock(hGlobal); //锁定一个全局内存对象 并且返回一个指向其第一个内存地址的指针 返回类型为 XPVOID
79-
memcpy(ptszBuffer, lpszMsgBuffer, nMsgLen);
79+
memcpy(ptszBuffer, lpszMsgBuffer, nMsgLen * sizeof(TCHAR));
8080

81-
SetClipboardData(dwFormat, hGlobal); //设置到剪贴板内容格式,然后是 数据的指针。
81+
#ifdef _UNICODE
82+
SetClipboardData(CF_UNICODETEXT, hGlobal);
83+
#else
84+
SetClipboardData(CF_TEXT, hGlobal);
85+
#endif
8286

8387
GlobalUnlock(hGlobal); //解锁。这样 其他程序才能操作这款内存!
8488
GlobalFree(hGlobal); //释放这个申请的空间

0 commit comments

Comments
 (0)