天天看點

Atitit。激活某個程式的api attilax總結

Atitit。激活某個程式的api attilax總結

1. 設定目前某視窗為目前視窗,有幾個步驟要做:1.得到視窗句柄FindWindow2.切換鍵盤輸入焦點AttachThreadInput3.顯示視窗ShowWindow(有些視窗被最小化/隐藏了)4.更改視窗的Zorder,SetWindowPos使之最上,為了不影響後續視窗的Zorder,改完之後,再還原5.最後SetForegroundWindow這樣應該可以保窗體跑到前台吧??

作者:: 老哇的爪子 Attilax 艾龍, 

2. Ahk法 ctrl+alt+shift+f1

;; act  main app

+^!F1:: 

msgbox act..

actMainWin()

return

3. Win api SetForegroundWindow  版本 2知激活一個視窗最有效的方法當然就是SetForegroundWindow,但在主視窗中調用這個函數激活自己的效果卻是隻在标題欄閃了一閃,如果在其他程序調用該函數則不會有問題;另外,如果程式是最小化的,它連閃都不閃了。ShowWindow (句柄, 9)SetForegroundWindow (句柄)SetWindowPos (句柄, -1, 0, 0, 0, 0, 3)‘這個句柄就是你要切換的視窗的句柄

4. Refer

VC 實作程式隻運作一個執行個體,并激活已運作的程式_華仔103_新浪部落格.htm

讨論一下,如何確定SetForegroundWindow()成功