LD_PRELOADを使用してLinuxおよびSolarisで可能なように、システム機能を置き換えることは可能ですか?
たとえば、環境変数を設定することにより:LD_PRELOAD = / path / to / mymalloc.so
システムライブラリにすでにインストールされているCランタイムではなく、置換するmalloc関数を使用します。システムdllの他のすべての関数は、通常どおり実行されます。
LD_PRELOADを使用してLinuxおよびSolarisで可能なように、システム機能を置き換えることは可能ですか?
たとえば、環境変数を設定することにより:LD_PRELOAD = / path / to / mymalloc.so
システムライブラリにすでにインストールされているCランタイムではなく、置換するmalloc関数を使用します。システムdllの他のすべての関数は、通常どおり実行されます。
Microsoft Research には、 Win32 API 呼び出しをインターセプトできるDetoursというライブラリがあります。
Detours は、x86、x64、および IA64 マシンで任意の Win32 関数を計測するためのライブラリです。Detours は、ターゲット関数のメモリ内コードを書き直すことで、Win32 関数をインターセプトします。Detours パッケージには、任意の DLL とデータ セグメント (ペイロードと呼ばれる) を任意の Win32 バイナリに添付するためのユーティリティも含まれています。
回り道 (前述のとおり) がオプションでない場合は、WinAPI Overrideを参照してください。積極的に整備されています。32 ビット版のみが利用可能であることに注意してください。