exeをリソースとしてインポートすると、リベースされ、PEヘッダが再構築されているように見えることは誰も気づいていますか?C++ visual studio 2010 exeリソースを取得Rebase?
これは刺激を感じることがあります。誰もがリベースを無効にする方法を知っていますか?
の手順は、C++で再現します
1)は、プロパティで(そのベースアドレスをハロー世界をコンパイルし、手動で設定)には、0x1000000番地
2)が第2のプロジェクトを作ると言うことができますし、ハローの世界に含まリソース。また、上記のようにベースアドレスを手動で設定します。
3)は、第2のプロジェクト
4)資源からexeファイルを抽出し、Peのエディタでそれをチェックを構築します! 0x400000に設定されます。なぜ?!
http://msdn.microsoft.com/en-us/library/hh7adf4f.aspxによると、あなたはあなたの設定に問題がある可能性があります:リンカのパラメータを追加してください。とにかく、私はそれがPEをrebaseすることができるプログラムのたくさんあると思うので、それらも試してみることを検討してください... –
editbin.exe私が理解する限り、コンパイル後に実行できる外部プログラムです。 PEヘッダーを再構築しても、上記の状況に影響はありません。あなたはその点を逃した。 – Ray
リソースコンパイラもリソースAPIもEXEファイルについて何も知らない。彼らはバイトの塊のようにそれらを扱います。したがって、彼らは基本アドレスを変更するために何もすることはできません。問題は他のところにあります。 –