if(IsClipboardFormatAvailable(CF_TEXT))
{
CString strIsUrl;
strIsUrl = (CString)(char *)GetClipboardData(CF_TEXT);
AfxMessageBox(strIsUrl);
}
应该怎样取?
{
CString strIsUrl;
strIsUrl = (CString)(char *)GetClipboardData(CF_TEXT);
AfxMessageBox(strIsUrl);
}
应该怎样取?
解决方案 »
- 有偿求助,三维网格图
- 求助.实现http发送?
- FormatMessage没有返回明细错误信息
- 突发奇想,能不能在另一个程序里面使用ReadProcessMemory读出media player正在播放的窗口内容,请大家参与讨论?
- 一个CArray对象,要使用它的add()函数,是不是要重载operator=() ?
- 我的clistctrl控件的问题,请大家帮忙解决它
- 新手上路:怎么注册ActiveX呀!
- 我在网上找了使用ddraw的源文件,里面用了个DDReLoadBitmap函数。。。
- 怎样得到树控件的层数(Level)?判赐教。
- 不知道怎么看下载过来的《mfc技术内幕》》:《〈
- 求助一个小程序!
- 小问题,送分请进!100!!!在线等待!
if(IsClipboardFormatAvailable(CF_TEXT))
{
CString strIsUrl;
HGLOBAL hglb=GetClipboardData(CF_TEXT);
strIsUrl = (CString)(char *)GlobalLock(hglb);
GlobalUnlock(hglb);
AfxMessageBox(strIsUrl);
}
不过你写的好像也行,因为在win32下,Global内存分配已经没有,所以GlobalAlloc返回的就已经是合法指针。msdn例子标准的方法
hglb = GetClipboardData(CF_TEXT);
if (hglb != NULL)
{
lptstr = GlobalLock(hglb);
if (lptstr != NULL)
{
// Call the application-defined ReplaceSelection
// function to insert the text and repaint the
// window.
ReplaceSelection(hwndSelected, pbox, lptstr);
GlobalUnlock(hglb);
}
}
CloseClipboard();