明晰夢Delphi ver.
敵への憑依に不具合が。
憑依自体は出来るんだけど、別の敵への憑依移行が出来ない。
めんどくさいからバッサリ省いちゃった☆
使える機能じゃないし、別にいいよね。
隠しメニュー(デバッガセーブとか消音)を動的に表示するといろいろ不具合があったので、代替機能を考えることに。
消音はメモリいぢりで実装(BGMを完全消音できるというオマケつき)。
デバッガセーブはPostMessageでWM_MENUSELECTを投げてみる。
が、出来ない(´;ω;`)
どうやらWM_COMMANDじゃないとダメらしい。
HSPでもWM_COMMAND使ってたし、WM_MENUSELECTって空気じゃね?
一応仮完成。
あとはステータスバー付ければ公開できそう。
だけどHSP版に劣ってるのが口惜しいので、まだ頑張りたい。でももうライフがゼロです。
もしくはHSP版も公開するか。
僕のパソコンはXP HomeとProをデュアルブートしてるという摩訶不思議パソコンなのですが、復旧してから長らく使っていなかったHomeの方のIEのお気に入りをみるとGunZ懐かしい動画が。
以下動画
【“なつかすぃーねー”の続きを読む】
SetWindowsHookExってプロセス生成からDLLがマッピングされるまでに、だいぶタイムラグがあるらしい。
そのタイムラグのうちに呼び出されるAPIはフック出来るとか出来ないとか。
窓化はウィンドウ生成時のメッセージをフックして同期してるみたいだけど、多重起動は無理ぽ。
つーか「うさみみハリケーン」に添付されている UsaTest2Win.exe の「2重起動チェック」でもフック出来てなかったから論外だなw
ProxyDLLも試してみた。
Proxy先のDLLのエクスポート関数を調べる処理は書けたけど、APIと同じ関数名をエクスポートするのにてこずってる。
KENJIさんの仲介DLL生成補助ツール(VC++)ではマジックのような処理でやってるけど、それをどうDelphiで表現すれば分からないという。