PE ファイルの特定のオフセットに (C++ で) 変数を格納する方法はありますか? 同様の質問: データ セクションに格納される変数の特定の順序を定義できますか?
実行可能ファイルに設定を保存できるプログラムがあると聞きました。
PE ファイルの特定のオフセットに (C++ で) 変数を格納する方法はありますか? 同様の質問: データ セクションに格納される変数の特定の順序を定義できますか?
実行可能ファイルに設定を保存できるプログラムがあると聞きました。
データのサイズによっては、PE イメージの非推奨 (未使用) の領域 (MS-DOS スタブなど) を使用して変数を格納できます。これらの未使用領域の多くのオフセットはよく知られています (PE フォーマットで定義されているため)。
「最も簡単な」方法は、リソース セクションを使用することです。オフセットは必要ありませんLoadString
。代わりに ID を使用します。これは再構築に対して安定しています。ただし、名前が示すように、それは Load 部分にすぎません。Windows は実行中に実行可能ファイルをロックするため、このSaveString
部分が非常に難しくなります。
\Program Files\
プログラムはおそらくそこに保存されており、ユーザーはとにかくそこに書き込むことができないため、ロックが実際には重要ではないというわけではありません。