→ yinjing:既然視窗名稱是固定的,試試看 ControlSend 針對指定視窗 07/21 23:53
→ ilovett:controlsend是對活化視窗,我的目標視窗是不活化的,請問要 07/22 13:09
→ ilovett:如何活化目標視窗?謝謝. 07/22 13:10
推 rexx:controlsend就是特別對非active的視窗用的吧 07/22 13:28
→ rexx:要activate一個視窗就是用winactivate指令就可以了 07/22 13:30
推 tokugawa:如果你不輸入帳號密碼,不如乾脆讓那個視窗不要出現。 07/22 13:50
→ tokugawa:我也是用Hinet,都快忘了那個視窗是長什麼樣子了XD 07/22 13:54
> -------------------------------------------------------------------------- <
作者: ilovett (wakamoto) 看板: EzHotKey
標題: Re: [請問] 如何用autohotkey活化hinet連線視窗
時間: Tue Jul 22 21:16:34 2008
※ 引述ilovett (wakamoto)》之銘言:
: 我想用ahk啟動hinet捷徑後
: 能夠自動連線, 請問該如何寫呢?
: 目前遇到的問題是, 啟動hinet.lnk後
: 跳出的hinet視窗是不活化的
: 所以送出enter鍵的動作, 無法啟動連線.
: 我試過用click指令, 但無法穩定啟動.
: 請問能否用winactivate, wintitle等指令活化hinet視窗,
: 再以 send {enter} 方式連線
: 我的hinet連線視窗的標題應該是 "連線到 hinet"
: 謝謝.
: 順便請教
: click指令的座標位置是以螢幕為準還是應用程式的視窗為準?
自問自答
= = = = =
^!1::
run d:\programs\hinet.lnk
sleep 1000
SetTitleMatchMode 2
IfWinExist, hinet
WinActivate
send {Enter}
run d:\programs\a.lnk
sleep 10000
run d:\programs\b.lnk
return
= = = = =
上列是經過版友回應後試出來的結果
^!1::利用ctrl+alt+1組合鍵依序啟動hinet, a及b共3個程式
return
上述2個藍色部分就是一次執行多個指令所用的指令.
為了達成活化並啟動hinet連線視窗的目的
所用的指令為下列黃色部分:
SetTitleMode 2 後面的參數可選用1,2,3
1: A window's title must start with the specified WinTitle to be a match.
1: 代表視窗標題得由指定字串作為起頭.
2: A window's title can contain WinTitle anywhere inside it to be a match.
2: 代表視窗標題內含有指定字串即可.
3: A window's title must exactly match WinTitle to be a match.
3: 代表視窗標題得完全地符合指定字串.
IfWinExist, hinet
此命令承接SetTitleMatchMode 2, 表示假如視窗標題含有hinet這個字串.
WinActivate
就活化含有指定標題[hinet]的視窗.
send {Enter}
送出enter訊號, 就可以開始連線了.
= = = = =
謝謝版友的提示. 也請大家提供不同的想法.
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.172.103.98
※ 編輯: ilovett 來自: 218.172.103.98 (07/22 21:18)
※ 編輯: ilovett 來自: 218.172.103.98 (07/22 21:37)
→ yinjing:ControlSend,, {enter} ,連線到 hinet,, 這樣不行嗎? 07/22 22:15
推 VElysian:推教學~~~ 非常謝謝您的分享 ^__^ 07/23 13:02