扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
作者:青岛郎锐 来源:天极网 2007年10月19日
关键字:
UINT uLo, uHi; // lParam消息的低、高字 UnpackDDElParam(WM_DDE_DATA,lParam,&uLo,&uHi);//对lParam进行解包 HANDLE hDDEData = (HANDLE)uLo; // 取出DDEDATA句柄 ATOM atomItem = (ATOM)uHi; // 取出数据项原子标识值 DDEDATA* lpDDEData = (DDEDATA*)GlobalLock(hDDEData); // 锁定内存块 if (lpDDEData->cfFormat == CF_TEXT) { // 检验数据格式 // 报告服务器返回的数据项信息 CString sMessage = "服务器返回的数据项内容为:" + CString(lpDDEData->Value); AfxMessageBox(sMessage); } GlobalUnlock(hDDEData); // 内存解锁 |
CString sDataItem = "Data from Client!"; // 发送的数据项内容 // 分配DDEPOKE格式化的全局共享内存块 HGLOBAL hDDEPoke = GlobalAlloc(GMEM_MOVEABLE | GMEM_DDESHARE, (LONG)sizeof(DDEPOKE) + sDataItem.GetLength() + 2); DDEPOKE* lpDDEPoke = (DDEPOKE*)GlobalLock(hDDEPoke); // 锁定内存块地址 lpDDEPoke->cfFormat = CF_TEXT; // 设置格式字段 ::strcpy((LPSTR)lpDDEPoke->Value, sDataItem); // 填充数据项内容 ::strcat((LPSTR)lpDDEPoke->Value, "\r\n"); // 添加终结字符 GlobalUnlock(hDDEPoke); // 解锁内存块 ATOM atomItem = GlobalAddAtom("Item B"); // 获取数据项原子标识值 HWND hwndClient = GetSafeHwnd(); // 获取当前窗口的安全句柄 // 组合消息参数lParam LONG lDataPack = PackDDElParam(WM_DDE_POKE, (UINT)hDDEPoke, atomItem); // 向服务器窗口发送WM_DDE_POKE消息 ::PostMessage(m_hwndServer, WM_DDE_POKE, (WPARAM)hwndClient, (LPARAM)lDataPack); |
UINT uLo, uHi; // lParam消息的低、高字 UnpackDDElParam(WM_DDE_DATA, lParam, &uLo, &uHi); // 对lParam进行解包 HANDLE hDDEPoke = (HANDLE)uLo; // 取出DDEPOKE句柄 ATOM atomItem = (ATOM)uHi; // 取出数据项原子标识值 DDEPOKE* lpDDEPoke = (DDEPOKE*)GlobalLock(hDDEPoke); // 锁定内存块 if (lpDDEPoke == NULL) { // 组合消息参数lParam LONG lDataPack = PackDDElParam(WM_DDE_ACK, (UINT)0, atomItem); // 向客户发送否定应答 ::PostMessage((HWND)wParam, WM_DDE_ACK, (WPARAM)m_hwndServer, (LPARAM)lDataPack); return; } if (lpDDEPoke->cfFormat == CF_TEXT) { // 检验数据格式 // 报告服务器返回的数据项信息 CString sMessage = "客户发来数据:" + CString(lpDDEPoke->Value); AfxMessageBox(sMessage); } else { // 组合消息参数lParam LONG lDataPack = PackDDElParam(WM_DDE_ACK, (UINT)0, atomItem); // 向客户发送否定应答 ::PostMessage((HWND)wParam, WM_DDE_ACK, (WPARAM)m_hwndServer, (LPARAM)lDataPack); GlobalUnlock(hDDEPoke); // 内存解锁 return; } GlobalUnlock(hDDEPoke); // 内存解锁 // 组合消息参数lParam LONG lDataPack = PackDDElParam(WM_DDE_ACK, (UINT)0x8000, atomItem); ::PostMessage((HWND)wParam, WM_DDE_ACK, (WPARAM)m_hwndServer, (LPARAM)lDataPack); // 向客户发送肯定应答 |
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者