39

コンパイラを作成する前に、Windows(32ビット)のPortableExecutable形式を理解しようとしています。特に、正しくロードし、実行して終了する以外に何もしない、必要最低限​​の実行可能ファイルの例を見たいと思います。

結果の.exeが約22KBで、KERNEL32.DLL(おそらく、環境やヒープなどをセットアップするためにLIBCによって使用される)からの多くのインポートを含む単純なCメイン関数を記述してコンパイルしようとしました。DOSヘッダーでさえおそらくもっと小さいかもしれません(それは現在デフォルトの'このプログラムはDOSモードで実行できません'を出力します)。

可能な限り最小のWindows32ビット実行可能ファイルの構造は何ですか?

4

2 に答える 2