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_MOVE

8.外部プログラムの終了方法は
  aplkeyで[Alt]+[F4]を送信してやれば終了してくれる。
  それともsendmsgでメッセージ送る?
  予想では、WM_SYSCOMMAND = H112 + SC_CLOSE

  

win32に詳しくないので、よく分からず…