EXE を生成するのに使われた Delphi のバージョンを判定する

 EXE ファイルをバイナリダンプする事で、使われた Delphi のバージョンを知る事ができます (コンソールアプリケーションではこの方法は使えません)。
 Delphi のソース一式を貰った時に適当なバージョンの Delphi で開いてプロジェクトを壊す前に、使われた Delphi の バージョンを EXE ファイルから判定してみてはどうでしょうか?

判定手法

  1. 適当なバイナリエディタを用意する。
  2. Delphi製と思われるファイルをバイナリエディタにかける。
  3. フォームのプロパティ名等を検索する。

 Delphi 製アプリケーションは EXE にフォームが含まれる場合、プロパティ名等がバイナリに含まれています。Delphi のバージョンにより、フォームのプロパティは増減していますので、これを検索する事で EXE を生成した Delphi のバージョンを知る事ができる、という訳です。

判定方法

 上から順番に判定してみて下さい。プロパティ名等が存在した時点でバージョンが確定します。

 Delphi 1 ~ XE4 で生成された EXE のアーカイブを用意しました。

 判定テストにお使い下さい。フォームに何も貼っていないので、アンチウィルスソフトに誤検知されるかもしれませんが、ウィルスは混入していません。お使いのアンチウィルスソフトが誤検知した場合には各アンチウィルスソフトメーカーに検体としてお送り下さい。

 ※totonica氏作 Exe Detect を利用すると簡単に判定できます。

See Also:


 BACK