今更聞けない Delphi のコト (拡張子編)

 気が付けば、ここの Tips は "そこそこ Delphi を知ってるヒト向け" の情報ばかりです。Delphi 2009 がリリースされた事もありますし、情報の整理を兼ねて趣を変えてみる事にしてみます。今回は Delphi で使われるファイルの拡張子についてです。

拡張子 説明
.pas (Pascal ソースファイル) ソースコードを記述するファイルです。
.inc (インクルードファイル) インクルードファイルです。Cで "#include 'FileName'" と記述するのと同様に、Delphi では "{$I FileName}" と記述できます。
.int (インターフェイスファイル) ソースファイルのインターフェイス部分のみのファイルです。
.dpr (Delphi プロジェクトファイル - 旧) Delphi用プロジェクトファイルです。コンソールアプリケーションならば、このファイルにソースコードを直接記述すれば他にファイルが必要ない場合があります。
.dproj (Delphi プロジェクトファイル - 新) Delphi用プロジェクトファイルです。中身は XML です。
.proj (プロジェクトファイル) CodeGear RAD Studio 用プロジェクトファイルです。中身は XML です。
.bdsproj (プロジェクトファイル) Borland Developer Studio 用プロジェクトファイルです。中身は XML です。
.groupproj (プロジェクトグループファイル) 複数のプロジェクトをグループで管理するためのファイルです(CodeGear RAD Studio 用)。中身は XML です。
.bdsgroup (プロジェクトグループファイル) 複数のプロジェクトをグループで管理するためのファイルです(Borland Developer Studio 用)。中身は XML です。
.bpg (プロジェクトグループファイル) 複数のプロジェクトをグループで管理するためのファイルです(旧Delphi用)。
.tgproj (プロジェクトデザインファイル) UMLファイルです。Together用のファイルです。
.ddp (ダイアグラムデザインファイル) ダイアグラムデザインファイルです。
.dfm (フォームファイル) VCL フォームのファイルです。Delphi のバージョンや設定によってはDFMファイルがバイナリである事があります。テキストDFMとバイナリDFMは "$(BDS)\bin\convert.exe" で相互に変換する事ができます。.NET の場合には .nfm、CLX の場合には .xfm がフォームファイルです。
.fmx (フォームファイル) FireMonkey フォームのファイルです。
.res (リソースファイル) リソースファイルです。バージョン情報やアイコン等が埋め込まれています。バイナリファイルです。Windows 用の他の言語で使われるものと同じです。
.rc (リソーススクリプトファイル) リソーススクリプトファイルです。テキストファイルです。"$(BDS)\bin\brcc32.exe(リソースコンパイラ)" でコンパイルする事により、.RES形式のリソースファイルを得る事ができます。Delphi のバージョンによってはビルトインでリソースコンパイラを持つものがあります。
.drc (文字列リソーススクリプトファイル) 文字列リソーススクリプトファイルです。テキストファイルです。brcc32.exe(リソースコンパイラ) でコンパイルする事により、.RES形式のリソースファイルを得る事ができます。Delphi のバージョンによってはビルトインでリソースコンパイラを持つものがあります。
.dcr (コンポーネントリソースファイル) VCL用リソースファイルです。VCLのアイコン等が格納されています。
.dof (プロジェクトオプションファイル) プロジェクトオプションが格納されています。最近のDelphiは、.DPROJ にプロジェクトオプションが格納されているので、このファイルは生成されないはずです。
.cfg (プロジェクト環境設定ファイル) コマンドラインコンパイルで使用されるコンパイルオプション等が格納されています。
.dsk (デスクトップ設定ファイル) IDE のウィンドウの位置やサイズが格納されるファイルです。"デスクトップの自動保存" が ON の時に生成されます。ブレークポイント情報も格納されています。消えないブレークポイントがあったり、全く違う場所でブレークしたりする場合にはこのファイルを削除してみてください。
.local (ユーザー固有プロジェクトオプションファイル) ユーザー固有プロジェクトオプションを格納するファイル。ブレークポイント情報も格納されています。消えないブレークポイントがあったり、全く違う場所でブレークしたりする場合にはこのファイルを削除してみてください。
.dst (デスクトップ設定ファイル) IDEのウィンドウの位置やサイズが格納されるファイルです。プロジェクト毎に生成されるものではなく、IDEのレイアウトを保存した時に %AppData% 以下("%AppData%\CodeGear\BDS\6.0"等)に生成されます。古い Delphi では "$(BDS)\bin" に生成されます。
.dcu (コンパイル済ユニットファイル) C/C++で言う所のオブジェクトファイルに相当します。バイナリファイルです。
.obj (オブジェクトファイル) そのオブジェクトファイルもリンカ設定によっては出力されます。
.map (マップファイル) マップファイルです。リンカ設定によっては出力されます。
.dpk (パッケージソースファイル) パッケージのソースファイルです。ソースコードを記述できます。
.dcp (コンパイル済パッケージファイル) .dpk をコンパイルして得られます。パッケージに含まれるユニットから生成された .DCU も内包します。バイナリファイルです。
.bpl (実行時パッケージファイル) .dpk をコンパイルして得られます。実態は .DLL です。Delphi製 アプリケーションや、Delphi の IDE に使われます。
.dpl (実行時パッケージファイル) .dpk をコンパイルして得られます。実態は .DLL です。Delphi製 アプリケーションや、Delphi の IDE に使われます。これは Delphi 3 形式のものです。
.pce (パッケージコレクションソースファイル) パッケージのコレクションソースファイルです。pce.exe (Delphi 7 まで付属) で作成できます。
.dpc (実行時パッケージコレクションファイル) .pce をコンパイルして得られます。
.dsm (デバッグシンボルファイル) シンボルファイルの読み込みエラーが出るのは、このファイルが壊れているか、コンパイラバージョンが異なる Delphi で生成されたシンボルファイルだからです。このエラーが出る場合には *.dsm を削除してください。
.rsm (リモートデバッグシンボルファイル) リモートデバッグ用のシンボルファイルです。リモートデバッグ時 (Win64 デバッグ時も含む) にブレークポイントがずれる場合にはこのファイルを削除し、再構築して再生成してください。
.tds (外部デバッグシンボルテーブルファイル) 外部デバッグシンボルテーブルファイルです。
.tlb (タイプライブラリ) タイプライブラリです。
.todo (TODOファイル) TODO用のファイルです。
.dci (支援機能設定ファイル) 支援機能の設定ファイルです。
.dct (コンポーネントテンプレートファイル) コンポーネントのテンプレートファイルです。
.dmt (メニューテンプレート設定ファイル) メニューのテンプレートを設定するファイルです。
.dro (リポジトリ設定ファイル) リポジトリの設定ファイルです。
.optset (名前付きオプションセットファイル) プロジェクトから分離された設定オプションを保存します。
.target (ターゲットファイル) MSBuildでのビルドプロセスをカスタマイズするのに用いられます。中身は XML です。
.identcache (リファクタリング用ファイル) リファクタリング用の(キャッシュ)ファイルです。

まとめ

 他にもファイルはありますが、一般的にはお目にかからない事が多いので割愛します。古いプロジェクトを Delphi のバージョンを変えながら保守すると必要のないファイルが残ってしまい、雑多な印象を受けますので、必要のないもの(特にコンパイルで再生成されるもの)は極力削除してしまいましょう。*.EXE / *.DLL / *.ICO なんかは...いいですよね、説明しなくても。

See Also:

 その他の Delphi では、"Delphi 生成ファイル" 等のキーワードで 全文検索 をかけてみて下さい。また、リファレンスマニュアルの "3.4.2 RAD Studio によって生成されるファイルの拡張子(Common)" にも詳細な情報があります。


 BACK