我知道这是win32问题我正在尝试使用SetClipboardData将字符串复制到剪贴板
但是我的代码只拾取第一个字符,我不知道为什么。我做错了什么?
谢谢
- int SetClipboardText(void)
- {
- HWND docHwnd = adsw_acadDocWnd();
- struct resbuf *pArgs = acedGetArgs() ;
- if (pArgs == NULL && pArgs->restype != RTSTR )
- return RSERR;
- if(OpenClipboard(docHwnd))
- {
- HGLOBAL clipbuffer;
- ACHAR* buffer;
- EmptyClipboard();
- clipbuffer = GlobalAlloc(GMEM_DDESHARE |
- GMEM_DDESHARE, _tcslen(pArgs->resval.rstring) + 1);
- buffer = (ACHAR*)GlobalLock(clipbuffer);
- _tcscpy(buffer, pArgs->resval.rstring);
- GlobalUnlock(clipbuffer);
- SetClipboardData(CF_TEXT,clipbuffer);
- CloseClipboard();
- }
- return (RSRSLT) ;
- }
本帖以下内容被隐藏保护;需要你回复后,才能看到! 游客,如果您要查看本帖隐藏内容请 回复 |