利用sendmessage函式傳送wm_copydata訊息,從而實現不同程序間傳遞資料。用兩個應用程式,乙個是用來傳送訊息的應用程式。乙個是用來接受訊息的應用程式。
傳送訊息的應用程式的設計:
(2)、按鈕控制項事件過程中,先利用findwindow查詢接受訊息的應用程式,如果找到了,就用sendmesage函式傳送訊息。
void cdatamsgmaindlg::onbutton1()
cstring msgedit;
getdlgitem(idc_edit1)->getwindowtext(msgedit);
copydatastruct data=;
data.dwdata=(dword)this->getsafehwnd();
data.cbdata=msgedit.getlength();
data.lpdata=msgedit.getbuffer(msgedit.getlength());
::sendmessage(hwnd,wm_copydata,(wparam)this->getsafehwnd(),(lparam)&data);
}接受訊息的應用程式的設計:
(1)、包含乙個編輯框控制項,用於顯示接受的資料。
bool cdatamsgclientdlg::oncopydata(cwnd* pwnd, copydatastruct* pcopydatastruct)
wm_copydata是能夠傳遞資料的,其資料主要是通過copydatastruct結構的資料來傳輸:
typedef struct tagcopydatastruct copydatastruct, *pcopydatastruct;
SENDMESSAGE函式巧應用
在這一期的sendmessage函式應用中,我將向大家介紹如何利用訊息函式來擴充套件樹型列表 treeview 控制項的功能相信對於樹型列表控制項大家十分的熟悉,典型的應用就是windows資源管理器中的目錄列表。在vb中,樹型列表控制項包含在microsoft windows common con...
在C 中使用SendMessage
在c 中使用sendmessage 日期 2005 02 04 備註 主要描述在呼叫api函式sendmessage時資料型別的轉換。sendmessage是乙個在user32.dll中宣告的api函式,在c 中匯入如下 using system.runtime.interopservices dl...
如何用SendMessage 函式傳遞字串
如何用 sendmessage 函式傳遞字串 一 兩個引數都帶字串的形式 void caaadlg onbutton1 lresult caaadlg oncurrentinfo wparam wparam,lparam lparam 二 只帶乙個字串的形式 cstring strpara t fg...