Archive for 8月, 2014

まもなくです

止まってましたが、そろそろ再開。

数か月放置してたいくつかのバグをやっと直しました。

・株価取得が朝1時間ほどで停止してしまう不具合。(致命的)

・CPU使用率が100%近くまで増加する不具合。(致命的)

・自動調整モードにすると調整しすぎてシグナル0件になってしまう。(致命的)

 

大丈夫。 たぶん大丈夫。

 

某ツール開発

不具合改修がようやく終わりつつあり、ロジック再調整しつつ、シグナルが出ない原因を追いかけてこれが解決すれば現バージョンはなんとか回復できるわけですが、ザラ場での監視とロジック調整は時間がかかるので。。(ここまで言い訳) ちょっぴり別の事もやってみる。

 

というわけで株とは関係ないちょっとしたツールを作成してます。いろいろあれなので技術面のみ書いてみる。

まず、どこのご家庭にも1つは転がってるRSSフィード取得ライブラリを用意します。

定期的に某サイトの新着ページURLからIDをいただき加工しswf入りのhtml化。これをWebBrowserコントロールで開く。

swfを無理やりクリックするためspy++でウィンドウ階層とメッセージを調べる。

“Shell Embedding”
+ “Shell DocObject View”
+ “Internet Explorer_Server”
+ “MacromediaFlashPlayerActiveX”

P WM_MOUSEMOVE fwKeys:0000 xPos:379 yPos:359 [wParam:00000000 lParam:0167017B]
P WM_LBUTTONDOWN fwKeys:MK_LBUTTON xPos:379 yPos:359 [wParam:00000001 lParam:0167017B]
P WM_LBUTTONUP fwKeys:0000 xPos:379 yPos:359 [wParam:00000000 lParam:0167017B]

PostMessageするとなにかが動く。(これが第1の難関、マウス操作のエミュレート)

ここから別スレッド。

4月にやったRawSocketでHeaderIncludedなスニッファを作りパケットを監視しておく。

対象物へのGETリクエストを補足したら、対象物のURLをゲット。(第2の難関、HTTPパケットの横取り)

ついでにHTTPヘッダを取得しWebClientでCookie & UserAgent偽装。(第3の難関、クライアント偽装)

 

あとはもう本能の赴くままに。。