[exerb-dev] PEヘッダ

Back to archive index

Yuya Kato yuya****@katod*****
2002年 5月 19日 (日) 23:24:51 JST


Yuyaです。

 .rubyセクションのサイズ拡大のサイズ変更時に参照、または変
更しなければならないPEヘッダのフィールドを調べてみました。

: SizeOfInitializeData
    初期化データを持つすべてのセクションの合計サイズを保持
    しています。
    変更する必要がありそうです。

: SectionAlignment
    セクションがメモリ上にマッピングされるときの境界サイズ
    を保持しています。
    現在は4KB境界と仮定していますが、実際にはここを参照する
    必要がありそうです。

: FileAlignment
    各セクション内の実データの境界サイズを保持しています。
    上と同様の理由で、参照する必要がありそうです。

: SizeOfImage
    イメージを構成するすべてのセクションの合計サイズを保持
    しています。
    変更する必要がありそうです。

: CheckSum
    ファイルのCRCチェックサムを保持しています。おそらく通常
    は0が設定されていますが、正しいCRC値を設定すれば、PEロー
    ダーがCRCチェックを行ってくれます。
    将来、使用するかもしれません。(簡易改竄防止機能として)

: Subsystem
    実行形式ファイルが使用するUIサブシステムの種別を保持し
    ています。1つのコアからGUI版とCUI版を生成する場合は、こ
    のフィールドを書き換える必要がありそうです。
    ただ、面倒なのでGUI版とCUI版の2つのコアを作った方がよさ
    そうです。

PEヘッダで変更しなければならないフィールドは、思ったより多
くないみたいですね。

====== Yuya Kato ======
E-Mail yuya****@katod*****
   Web http://yuya.4th.to/
i-mode http://yuya.4th.to/i/




exerb-developer メーリングリストの案内
Back to archive index