マーケットスピードの自動終了と自動起動のメモ

マーケットスピード(MarketSpeed.exe)を終了させるには?

  1. FindWindow("MDIFrame", "Market Speed Ver8.0") でマーケットスピードのウィンドウを探す(ウィンドウ名にバージョン番号が入っているので、ここでバージョン依存になっている)。
  2. ウィンドウがあったら SendMessage(hWnd, WM_SYSCOMMAND, SC_CLOSE, 0) する。(ちなみに WM_CLOSE だとウィンドウは消えるがプロセスは消えない。)


RSS(RSS.exe)を終了させるには?

  1. FindWindow("ATL:00509B28", "") でRSSのウィンドウを探す(クラス名に含まれる16進数の値は固定値らしい)。
  2. ウィンドウがあったら SendMessage(hWnd, WM_SYSCOMMAND, SC_CLOSE, 0) する。


マーケットスピードを起動して自動ログインするには?

RSS を起動するには?

  • RSS.EXE を起動する。この際は事前にカレントディレクトリーをマーケットスピードのフォルダーにしておく必要がある。
  • あるいは、MLauncher.exe に引数 RSS を渡す。(このあたりはインストール後のショートカットを見れば分かる。)


なお、MarketSpeed.exe も RSS.exe も終了のために上記のウィンドウメッセージを送っても、プロセスが終了するまでには間があるので、ウィンドウメッセージを送った後に間髪入れずにプロセスを起動しようとしても多重起動になってしまいダメである。ウィンドウメッセージを送った後に、ポーリングなどでプロセスが消滅するまで追跡調査すること。


2010年10月14日追記: マーケットスピードのバージョン 9.2 において、MarketSpeed は FindWindow("MDIFrame", "Market Speed Ver9.2") で探し、RSS は FindWindow("ATL:00509DA0", "") で探す。


2010年10月24日追記: マーケットスピードのバージョン 10.0 において、MarketSpeed は FindWindow("MDIFrame", "Market Speed Ver10.0") で探し、RSS は FindWindow("ATL:00509B28", "") で探す。なぜだか RSS のクラス名が以前のものに戻っている。