あなたがいる関数のアドレスを取得する方法を知っている人がいたら、私はMessageBoxA()をフックしています。 MessageBoxA()が呼び出されると、私はhookMessageboxA()という擬似関数を呼び出します。 hookMessageBoxA()内から、MessageBoxA()がどこから呼び出されたのかを吐き出したいと思います。それは理にかなっていますか?おそらくアセンブリを使用する必要がありますが、私はそれを行う方法がわかりません。C++で関数のアドレスを見つける
以下のコードは間違っています。アセンブリやC++でこれを行う方法に関する助けがあれば幸いです。
DWORD address = 0x00;
_asm {
mov address, ebp
}
DWORD keyPointerAddr = (DWORD)hInstance + 0x1000 - address + 0x00401000;
char str[255];
sprintf(str,"That call is coming from [%d]\n", keyPointerAddr);
ありがとうございます。私はこれについてもっと学ぶ必要はないと思っていました:D。 – user954753
@ user954753問題はありません、うまくいけば記事はあなたに悲しみの多くの時間を節約します:)。 –