UWSCとAHKでIME.ahkを使わずにIMEを操作

IME.ahkも悪くはないのですが、マイクロソフトの気分次第でどう転ぶかわかりません。一応UWSCでのコントロール手法も考えておきます。薙刀式に従ってFG同時押しによりIMEオフ、HJ同時押しでIMEオンとしたいのですがうまくいきませんでした。

代わりにHJ同時押しで強制的にIMEオン状態を維持し、FG同時押しでコントロール可能な状態へ解除しています。FV同時押しでIMEオフ状態を強制します。

もし試される方がいればキーボード入力を強引に乗っ取りますのでWindowsのサインインをPINに変更されることを強く推奨します。最悪、画面ロックのたびに再起動する必要がありますので注意してください。起動から100秒後にメイン側は終了しますが、その後もIME状態の強制的な維持は続きます。
askpc.panasonic.co.jp
続きます
jigendaddy.hatenablog.com

ホットキー1(メイン)

SETHOTKEY(VK_F, ,"F")
SETHOTKEY(VK_G, ,"G")
PUBLIC F_FL=0
PUBLIC G_FL=0
SLEEP(100)
PROCEDURE F
 F_FL=1
 IF G_FL>0 THEN
  F_FL=0
  G_FL=0
  SCKEY(0, VK_ALT, VK_F2)
  EXITEXIT
 ENDIF
FEND
PROCEDURE G
 G_FL=1
 IF F_FL>0 THEN
  F_FL=0
  G_FL=0
  SCKEY(0, VK_ALT, VK_F2)
  EXITEXIT
 ENDIF
FEND

ホットキー2(別プロセスで実行)

WHILE 1
 IF !GETKEYSTATE(TGL_IME) THEN KBD(VK_KANJI, CLICK)
WEND

ホットキー3(別プロセスで実行)

WHILE 1
 IF GETKEYSTATE(TGL_IME) THEN KBD(VK_KANJI, CLICK)
WEND

AHK

~h & j::
~j & h::
IfWinExist, ahk_exe UWSC.exe
{
	Send,{Backspace}
	Send,!{F2}
	Send,^{w}
	Sleep,500
	Send,{2}
	Sleep,1000
	WinActivate
	Send,^{w}
	Sleep,500
	Send,{1}
}
Return
~f & v::
~v & f::
IfWinExist, ahk_exe UWSC.exe
{
	Send,{Backspace}
	WinActivate
	Sleep,500
	Send,^{w}
	Sleep,500
	Send,{3}
}