程序通過訊息控制其他程序視窗

2021-06-18 19:32:08 字數 1125 閱讀 6341

具體視窗資訊通過spy++檢視。。

下面一自己的程式**說明

查詢主視窗

hwnd  main2 =findwindowex( null, null,"#32770", "windows name" );//#32770 通過spy++上說 代表對話方塊

//查詢主視窗的tab control子視窗

hwnd  hwnd2  =   findwindowex( main2, null,"systabcontrol32", null);

//tab control切換表現訊息傳送

sendmessage(hwnd2,tcm_setcurfocus,2,0);

//查詢tab contral第乙個子視窗。  通過spy++顯示 我這裡第乙個子視窗就是需要配置的那一頁的視窗

hwnd t1 = getwindow(hwnd2, gw_child);

//combobox 選擇訊息

hwnd contral = findwindowex( t1, thread2,"combobox", null );

sendmessage(contral,cb_setcursel  ,1,0);

//msdn上說cb_setcursel後就不用傳送cbn_selchange訊息了,

//但是視窗得不到combox狀態改變的通知

int id = getdlgctrlid(contral);

sendmessage(getparent(contral), wm_command, makewparam(id, cbn_selchange), (lparam)contral);

//滑塊  這裡不知道怎麼通知視窗滑塊狀態改變,有知道的大神們勞煩告訴一下小弟我

sendmessage(     

(hwnd) htrackbar32,      // handle to destination control     

(uint) tbm_setpos,      // message id     

(wparam) true,      // = 0; not used, must be zero   

(lparam) 0      // = 0; not used, must be zero

); 

C 關閉其他程式視窗 程序

下面介紹我所知的兩種方法,應該對大家有幫助,如果有朋友知道其他的方法,謝謝共享一下。方法1procname 需要關閉的程序名稱 private bool closeproc string procname return result 上面程式裡定義了乙個arraylist,當不知道所要關閉的程序的具...

通過列舉獲得控制台程序號,結束程序

我用enumprocesses aprocesses,sizeof aprocesses cbneeded 得到所有執行當中的程序的id 然後逐一檢查processname 如果processname是我要找的 pig.exe 則得到它的控制代碼hprocess id應該沒有錯 控制代碼是這樣得到 ...

程序傳送訊息

region 程序傳送訊息 public const int wm copydata 0x004a dllimport user32.dll entrypoint findwindow public static extern intptr findwindow string lpclassname...