注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

从C开始

 
 
 

日志

 
 

进程间通信 - 剪贴板  

2010-11-21 19:39:56|  分类: MFC |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

//剪贴板主要用于本地的电脑上进程间的通信

发送端:
void CClipboardDlg::OnBtnSend() 
{
// TODO: Add your control notification handler code here
if ( !OpenClipboard() )
{
AfxMessageBox( "Cannot open the Clipboard" );
return;
}
// Remove the current Clipboard contents  
if( !EmptyClipboard() )
{
AfxMessageBox( "Cannot empty the Clipboard" );
return;  
}

CString str;
GetDlgItemText(IDC_EDIT1, str);
HANDLE hData = GlobalAlloc(GMEM_MOVEABLE, str.GetLength() + 1);
char* chData = (char*)GlobalLock(hData);
strcpy(chData, str);
GlobalUnlock(hData);

if ( ::SetClipboardData( CF_TEXT, hData ) == NULL )  
{
AfxMessageBox( "Unable to set Clipboard data" );    
CloseClipboard();
return;  
}  

CloseClipboard();
}


//接收端
void CClipboardDlg::OnBtnRecv() 
{
// TODO: Add your control notification handler code here
//打开剪贴板
if ( !OpenClipboard() )
{
AfxMessageBox( "Cannot open the Clipboard" );
return;
}
//判断剪贴板中的内容是不是我们想要的CF_TEXT类型
if (IsClipboardFormatAvailable(CF_TEXT))
{
HANDLE hClip;
char* readBuf;
hClip = GetClipboardData(CF_TEXT);
readBuf = (char*)GlobalLock(hClip);
GlobalUnlock(hClip);
SetDlgItemText(IDC_EDIT2, readBuf);
}

CloseClipboard();
}
  评论这张
 
阅读(171)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018