HSPと外部プログラムとの連携(案・未テスト)
0.execで外部プログラムを起動1.aplselでウィンドウを捕獲
2.aplactで当該外部プログラムをアクティブ化
3.必要に応じて、自作プログラムのウィンドウは非表示にする。
4.当該外部プログラムがコントローラに対応していない場合は、
コントローラとマウスorキーボードのキーコードを対応付けて、
aplkeyにて、送信する
※)頑固なアプリでは、きかないこともあり。
※)バックグラウンドでJoyToKeyを動作させておけば完璧
※)JoyToKeyは、最小化するとタスクバーに出ないので、
execの最小化起動モードで起動するとよい。なぜか、最小化状態で起動しない?
※)aplkeyは、aplselでstat = 0をチェックしないと、他のウィンドウにもメッセージを送ることがあるので注意5.こちらの「外部アプリケーションの実行待ち制御をする」
という記事を使えば、終了待ちもできる。6.
外部プログラムの最大化、最小化は、sendmsgで可能。
ソースは、こちら。HWNDは、HSP側で選択されているウィンドウのハンドルが
"hwnd"というシステム変数で管理されているようだ。
※)hwndは、HSPから起動したウィンドウのHWNDしか管理してないみたい…。
※)最小化のショートカットキーが[ALT]+[SPACE]+[N]だから、
aplkey 32,4 : aplkey 78,4 でなんとかいける。7.外部プログラムのウィンドウ配置位置の変更については、
HSPのヘルプでは見つけることができず。(※widthでは不可)
sendmsg + これらかなあ?
予想では、WM_SYSCOMMAND = H112 + SC_MOVE8.外部プログラムの終了方法は
aplkeyで[Alt]+[F4]を送信してやれば終了してくれる。
それともsendmsgでメッセージ送る?
予想では、WM_SYSCOMMAND = H112 + SC_CLOSE
win32に詳しくないので、よく分からず…