応用編

解析結果を応用する時に必要な情報



自前のコードを実行させる方法として、外部からの Code Injection は RBRdll で、Proxy Dll は RBR Analogue Gauges で使われています。残る方法はレジストリの AppInit_DLLs を使った Dll injection ぐらいだと思われます。

これら3種は排他的だったりウイルスやなんかと間違われたり、割り込ませる部分を作るのが面倒ということもあります。

そういう理由で、ソースコードも用意されていて複数入れても競合しにくい
「プラグイン」の説明をしつつ推奨しておきます。ただし、用意されているものだけだと大したことはできないです。


プラグインにするには

Warthog が公開してくれた RBR Plugin Interface を使うと楽です。

最低限、
IPlugin* RBR_CreatePlugin( IRBRGame* pGame )
が必要です。
0x006264D0(NoSSE.exeの場合は0x006194F0)からの処理を見ればわかりますが、この関数が NULL を返すと Dll が解放されるようになってます。


プラグインのソースコード

Warthog が公開してくれた RBR Plugin Interface

何はともあれ、これがないと始まらない(と思う)。


プラグインのサンプル

RBR Single Rally Plugin (by lowgoods)


プラグインの仕様など

  • Direct3DCreate9 関数
    ( IDirect3D9 *Direct3DCreate9( UINT SDKVersion ) )
    が呼び出される前に Plugins フォルダ内の dll ファイルがロードされる
  • RBR がプラグインの IPlugin* RBR_CreatePlugin( IRBRGame* pGame ) を呼び出すが、この関数が NULL を返すと Dll は解放されるようになっている

  • 最終更新:2010-07-31 05:46:02

このWIKIを編集するにはパスワード入力が必要です

認証パスワード