XREA.COM Logo XREA.COM Ad

スクリプト質問スレッド

5unnamed.ahk:04/09/26 18:34 ID:itM+1YLk
CapsLock押下でCtrlを送信させたいのですがCapsLockの押下解除が
認知できず煮詰まってます。(Win XP SP1 Home / FMV Loox T90D)

$sc03A:: ; FMV LOOX T90D スキャンコード(CapsLockラベルでは何故か効かないので)
send,{CtrlDown}
Loop ; ←ここから抜けて来られなくなる
{
st = U ; buf init
GetKeyState,st,sc03A,P
if ErrorLevel <> 0 ,Break ; Error break(効果無し)
if st <> D, Break
Sleep,10
}
send,{CtrlUp}
retuen

#InstallKeybdHookのみ記述の.ahkを作りKeyHistoryを調べましたが
押下中 F0 03A d の表記がリピートされ、押下解除でdは止まりますが
解除後もuのイベントは発生しないままでした。
上のコーディングだと押下解除後もGetKeyStateは D or d を返してきて、
どうにも解除情報が得られない状態です。
また、Loop{ ~ }を、KeyWait,sc03A に変えても同様な結果です。
(上のソースには入れ込んでいませんが、特定のアプリ(xyzzy)のみに
限定適用させたいのでレジ弄って CtrlとCapsを入換えとかは使えませんのです)

そもそもCapsLock::での表記が効かないのでマシン固有の問題かとも
思ってるのですが、何か少しでもヒントがありましたらお願いいたします。
85KB
名前: E-mail:
ファイル:
0ch BBS 2005-10-08