MSHelper


概要

 楽天証券のマーケットスピード(以下、MS)を使いやすくしたいと思い、作成し始めました。とりあえず、マイページで登録銘柄情報やランキング情報をクリックした際に、周囲に配置されている市況情報、個別チャートが連動して更新されるといいなと思い、その機能を実装しました。MSのマイページ(MDI表示の方)で登録銘柄情報の銘柄をクリックするだけで、(指数などを表示しているウィンドウ以外の)市況情報やチャートが連動するようになります。その際、未ログイン状態でも自動ログイン機能が有効であれば、パスワードを入力することなく自動ログインし、データを更新します。MSの複数起動にも対応しています。


最新バージョン

 2.26 (ダウンロード


動作環境

 Windows XPで動作確認しています。基本的にWindow2000/XPに対応しています。VISTA非対応です。
 MSのバージョン6.0以降に対応しています。

 (注意) 動作環境は32ビットパソコンに限定されます。64ビットパソコン上では動作しないと思われます(未確認)。MSのマイページ表示中に例外エラーで落ちるとマイページの構成情報ファイルが保存されず、せっかく設定した内容を失うことがあります。64ビットパソコンでは実行しないようにお願いします。試される場合は、2ちゃんねるなどを参考に、マイページの構成内容ファイルをバックアップしてから実行するようにして下さい。32ビットパソコン上で実行される方も、万が一のためにマイページの構成ファイルをバックアップされた方がよいかと思っています(私は、最近はMSHelper経由でMSを利用していますが、今のところ落ちたことはありません。しかし、予期せぬ状況は常に起こりえますのでバックアップは取るようにしています(時間をかけた配置設定が消えてなくなるのは悲しいですよね))。


スクリーンショット

MSHelper Ver. 2.01のスクリーンショットです。

MSHelper Ver. 2.22のスクリーンショットです。


不具合情報


更新情報

 2007/07/22 バージョン0.09 リリース。雛形ができた。とくに、欲しかった機能はこれだけなのでたくさんの機能が付加されることはないと思う。周りのウィンドウの情報が全て更新されてしまうので、除外銘柄などを選択できるようにすればいいかもしれない。
 2007/07/22 バージョン0.10 フォントサイズの変更、スクロールに対応して、とりあえず問題はなくなった。しばらく様子を見る。
 2007/07/23 バージョン0.11 既存の不具合に対応した。また、フォントサイズへの対応をメニューによる手動変更ではなく、自動で行うようにした。データの更新時の位置変更等、細かな処理に対応した。紛らわしさを避けるため、アイコンの色を緑色に変更した。小さなプログラムなのに何度もMSを起動するので、自動ログイン機能が欲しくなった。
 2007/07/24 バージョン0.12 既存の不具合に対応した。米国株式、カバードワラント、為替に対応した。対応と言っても、カバワラと為替は無視、日本株と米国株の登録銘柄情報、ランキング情報(日本株)をクリックした時にのみ、周囲のウィンドウ表示が連動するようにした。マイページの1画面に日本株のランキング情報、米国株の登録銘柄情報、日本株の個別チャートなどが混ざっていても大丈夫になった。
 2007/07/24 バージョン0.20 指数など銘柄コードを表示するコンボボックスの文字列が5文字以上の場合、そのウィンドウを連動しないようにした。指数を表示しているウィンドウが影響を受けなくなって、使い勝手は増した(米国株式でも同様)。また、実行時のMSの起動、RSSの起動、自動ログイン機能を実装した。自動ログイン時に利用するパスワードは暗号化して保存していますが、その気になれば簡単に破れる代物ですのでご利用は自己責任にてお願いします(マイナーなアプリの暗号を解くよりも、MSのパスワード入力内容をフックしてしまった方が早いので、わざわざやる人もいないと思ってますけど。実際にMSHelperもMSのログインダイアログからパスワードを抜き取ってますし)。パスワードを見抜かれることも危険ですが、それ以上に複数回の認証に失敗してアカウントにロックがかかる方を心配しています。MSHelperではログインに成功した場合にのみ、IDとパスワードを記憶するようにしていますが、Webページでログインパスワードを変更した直後に自動ログインする場合など、恐らく(間違いなく)失敗すると思われます。パスワードを変更した時は、MSを起動した直後にメニューからパスワードをクリアするようお願いします。自動ログインがこんなに便利だとは思わなかった。MSとRSSの起動を管理できるため、3つ使っていたショートカットが1つで済むようになった(初めて皆の役に立つプログラムを書いた気がする)。他はトレイアイコンのクリックでMSをアクティブにしたり、ダブルクリックで最大化、通常表示を切り替えるなど。
 2007/07/25 バージョン0.99 起動時にログインダイアログを表示する機能を追加した。自動ログイン機能と組み合わせ、MSの起動時に自動的にログインできるようになった。ReadMe.txtを校正した。もう欲しい機能はないので、バグ処理だけ行うことになると思います。登録銘柄情報のソートの問題や他のユーザーとしてのログイン機能(NT系)には、いつか取り組むかもしれないですけど。
 2007/07/26 バージョン1.00 とりあえず、問題なさそうなのでバージョン1.00にして一区切りにした。足したコードはMSの起動時を最大化するくらい。追加機能を色々考えてるけど、あんまりいいのが思いつかない。他のユーザーでログインが最有力かなってところ。他のアプリみたいにドラッグ&ドロップで銘柄コードを他のウィンドウに反映させたり、市況情報の歩み値ウィンドウの上に子ウィンドウを作って大口約定だけを表示するようにとか、面白いし実装は可能だけど(MSのプログラマーが実装しようとしないのは疑問だけど、内部事情でもあるのですかね?)、役には立つかは疑問。例えば大口約定なら225全銘柄を監視するような別アプリを作った方が効率的だし、それにあんまり複雑にするとMSのバージョンアップの際に面倒なことになりそう。あと、MSS(マーケット・スピード・ショートカット)とは恐らく自動ログイン部分で相性が悪いと思いますので、どちらかの自動ログイン機能を使用しないように設定された方が良いかと思います。
 2007/07/27 バージョン2.00 いきなり、メジャーバージョン・アップ。別ユーザでのログイン機能を実装した(その為、Windows 98非対応になった)。アイコンを変更する機能を追加した。
 2007/07/30 バージョン2.00 ReadMe.txtを校正した。(注意)を強調して書いた。コードには手をつけていない。
 2007/07/30 バージョン2.01 画面をスクロールした状態でヘッダ部分をクリックしてもコードが反映されてしまう不具合を修正。他は問題なく動いているので放置するつもり。MSは多重起動できてもRSSは多重起動できないので(ユーザーが異なるのでRSSプロセス自体は作成できるけど、1つのRSSプロセスしかデフォールトでは接続中にならない。それも最初にMSを起動したユーザーのRSSだけみたい?)、複数起動する際は、RSSを利用するアプリを起動するユーザーのMSHelperを最初に起動し、そのユーザーのRSSを起動するようにするようにお願いします(詳しくは検証してないですけど、Windows XPではそんな感じです)。
 2007/08/03 バージョン2.02 ハンドルの閉じ忘れ部分を修正。ついでに登録銘柄情報、ランキング情報の画面をマウスホイールでスクロールするコードを追加した。よく考えたら、MSは市況情報や四季報情報もスクロールしない気がした。歩み値ウィンドウもそうだし、理解に苦しむところ。MSを使いやすくするツールはアイデアに困らなくていいけど、何でこんなの作らなきゃいけないんだとも思ってしまう。しばらく(永遠に?)プログラム作成から遠ざかるつもりなので、その辺の対応は誰か他の人に任せたいと思います。
 2007/08/06 バージョン2.03 スクロールが上まで戻り切らない部分を修正した。
 2007/10/10 バージョン2.04 登録銘柄やランキング情報の大証銘柄に反応しない不具合を修正した。
 2007/10/25 バージョン2.05 対象市場の切り替えを自動的に行うようにした。ランキング情報のクリックに反応しない不具合を修正した。
 2008/02/04 バージョン2.05 MSの6.3で例外が発生する。プログラム内部の変数を変更すれば動くと思うが、自動更新の度に例外が発生すると面倒なので6.0から6.2限定で利用願います。
 2008/03/08 バージョン2.10 MSの7.0リリースに伴い、コードの反映機能は必要なくなったため、バージョン6.0から6.2以外の場合はコードを反映しないようにした。バージョン6.3や7.0でも例外は発生しなくなりました。その他の機能(スクロール、別ユーザーログインなど)は有効です。
 2008/03/18 バージョン2.11 米国株式で例外処理していない不具合を修正。
 2008/04/12 バージョン2.20 左クリックで銘柄を連動させる機能を復活させました。MSの6.0から6.2では独自の実装によって、7.0以上ではMSの標準機能によって周囲のウィンドウがクリックした銘柄に連動します。連動させるかしないかをメニューから選択できるようにしました。
 2008/04/12 バージョン2.21 市況情報もスクロールするようにしました。
 2008/04/12 バージョン2.22 登録銘柄情報やランキング情報のダブルクリックで信用注文ダイアログを表示できるようにしました(市況情報をクリックした時の動作は環境設定で変更できますが、登録銘柄情報やランキング情報のダブルクリックで信用注文ダイアログを立ち上げるにはどうしたらよいかわからないです。もしかしたら環境設定のどこかで変更できるのかもしれないです)。初回クリック時に一瞬だけメニューが表示されますがバグではありません(初期化のためです)。2回目からはメニューは表示されなくなります。今後も思いつきで機能は勝手に追加されると思います。(注)ランキング情報など銘柄の表示順位が頻繁に入れ替わる場合、信用注文ダイアログの表示銘柄が意図しなかったものになる可能性があります。実装がダブルクリックした瞬間にダイアログにメニューメッセージをPost(Sendではないです)するというものですのでメッセージループの待ち時間など微妙なタイムラグがあります。この機能を利用する場合は、自分が注文したい銘柄か発注する際に必ず確認願います。
 2008/04/14 バージョン2.23 ヘッダ部分をダブルクリックした時の不具合を修正。メニューが表示されない不具合を修正。
 2008/06/24 バージョン2.24 ライブラリ更新に伴うアップデート。何故かバージョンを間違えていた部分は修正しました。
 2009/05/18 バージョン2.25 (何か不具合があった時に自分で直せる様に、又、VISTAに移植できるように)ソースコード公開しました。暗号化部分は個人で変更願います。1年くらい変更しなくて大丈夫だったのですけど。細かいバージョンアップの際などにコントロールのIDとか変更されるかもしれません。
 2009/06/13 バージョン2.26 ソースコード非公開に戻しました。


備忘録

 2008/04/13 マーケットスピードの自動ログインができなくなった。MSHelperが原因のエラーかと思って旧バージョンに戻してもログインできない。しかし、別ユーザー権限で実行するとログインできるという不思議な現象にあった。ログインダイアログが表示されてサーバーに接続しようとしているが返答がない感じ、名前解決できてない感じ。パソコン本体やルーターとか再起動して、セキュリティ関係もチェックして、一応、MSも再インストールしたけど駄目だった。同様の症状を検索したら、どうもJAVA(?)かIE7に関係あるらしい。とりあえず、コントロールパネルのJAVA設定でネットワーク設定を確認しようとクリックしたら突然ログインできるようになった。ネットワーク設定をクリックした瞬間にログインできるようになったので原因は多分これだと思う。意味がわからない。また起こる可能性もあり。


トップページに戻る