fring_lib.DLLを調査 | objective-cをちょい研究!ブログ

objective-cをちょい研究!ブログ

WILLCOMを卒業してiOS開発者に転身しました。。
コメント&トラックバック大歓迎です。

ZERO3の着信音などでMIDIを鳴らしているDLLの調査です。


FRING_LIB.DLLのエクスポート関数名はDependency Walker というソフトで調べることが出来るんだけど、調べた関数の使い方がまったくわからない。


ダミーのエクスポート関数を実装したダミーのFRING_LIB.DLLを作って、元にあったDLLを上書きして、どのように呼ばれているのか調べてみた。
ダミー関数は呼ばれるとログを吐くようにしてある。


着信音の設定でMIDIを視聴してみた結果は以下のとおり。
音は当然ならないが再生中と表示されたのでうまくごまかせている感じ。


fmpj_dll_init 272304 0
fmpj_sys_open 570878756 2
fmpj_data_ex_getformatid 273184 2854
fmpj_player_open 272308 570878724
fmpj_player_setdata 0 570878732
fmpj_data_ex_getformatid 273184 2854
fmpj_info_player_params 570878728 2818
fmpj_player_setparam 0 0
fmpj_player_seek 0 0
fmpj_player_play 0 2
fmpj_sys_close 1 2
fmpj_dll_quit 11272 2

リストの数値は、エクスポート関数の引数がわからないのでint型の引数を2つと仮定して取得してみた結果。


引数の値が大きいものは、ポインタかハンドルの可能性もある。


ここまで調べてみたけど、やっぱり使い方はわからないままでした(^^;