1

最初のexeで、ラベルとしていくつかの特別なバイトを含むcharの配列を定義しました。別のexeからメモリにマッピングし、必要なラベルを見つけて新しいデータを挿入しましたが、このデータは定義された配列よりも短い可能性があるため、カットしたいと思いますこの配列を必要なサイズに!どうすればいいですか?

4

1 に答える 1

4

PEファイルの断片を切り取るための細かく簡単な方法はありません。

明らかな解決策はlength、元の(あなたの用語では最初に)exeでフィールドを追加で定義し、別のラベルでマークすることです。次に、2番目のexeの追加作業は、このフィールドに実際のデータ長を書き込むことです。


編集:切断があなたの主な目標である場合は、次のことにも留意する必要があります:

  • PEのコントロールサムが変わります。ただし、PEヘッダーのコントロールサムフィールドの場所を見つけるのは難しくありません。
  • PEファイルが整列されます。すべてのセクションが整列されます。アラインメントはヘッダーにもあります。
  • 1つのセクションをカットすると、大きな影響が生じます。PEファイルのヘッダー構造を見てください。

ヘッダ

参照: http: //msdn.microsoft.com/en-us/library/ms809762.aspx

于 2010-10-11T15:50:58.750 に答える