RC ファイル形式とは?
.rc ファイルは、Windows アプリケーションのリソース(実行ファイル(.exe)やダイナミックリンクライブラリ(.dll)にコンパイルおよびリンクされるユーザーインターフェース要素やバイナリデータ)を定義するプレーンテキストのソースファイルです。.rc ファイルで定義されるリソースには、ダイアログボックス、メニュー、文字列テーブル、アイコン、カーソル、ビットマップ、バージョン情報ブロック、アクセラレータテーブル、および任意のバイナリデータ(RCDATA)が含まれます。
この形式は C プリプロセッサの構文を使用します。.rc ファイルは通常、数値識別子の定数を取り込むために #include "resource.h" で始まり、全体を通して #define マクロをサポートしています。リソースコンパイラ rc.exe(Windows SDK の一部)は、.rc ファイルをバイナリの .res ファイルに処理し、リンカーがそれを最終的な PE 実行ファイルに埋め込みます。
Visual Studio のリソースエディタは .rc ファイルを BOM 付きの UTF-16 LE として保存しますが、手動で作成されたファイルは通常 ASCII です。クロスプラットフォームの MinGW/GCC ツールチェーンには windres が含まれており、Linux や macOS 上で Windows ターゲット向けの .rc ファイルをコンパイルできます。
.rc 形式は Windows 3.0 の時代から安定しており、2026 年現在も Win32 リソースの標準的なメカニズムであり続けています。.NET プロジェクトでは、マネージドリソースとして代わりに .resx や .resources ファイルが使用されます。
DIALOGEXリソースタイプ(拡張ダイアログ)は、1993 年頃に Win32 と共に導入されました。- Resource Hacker は、すでに
.exeや.dllファイルにコンパイルされたリソースを表示および編集するための一般的なツールです。 windresは、クロスコンパイルターゲット向けのrc.exeに相当する GNU Binutils のツールです。
セキュリティと安全性
リスク: LOWコンパイルして初めて機能するプレーンテキストのソースファイルです。それ自体には実行コードは含まれず、リソース定義のみが含まれます。信頼できないソースからコンパイルする前に、任意のエディタで生のテキストを確認してください。RCDATA ブロックには、コンパイルされた EXE の一部となる任意のバイナリペイロードを埋め込むことができます。
形式の詳細
概要- Lynx ブラウザ設定ファイル - Unix テキストモードブラウザの Lynx は、~/.lynxrc(時には .rc)をプレーンテキストの実行時設定ファイルとして使用します。Windows リソースとは無関係です。
- 一般的な Unix 実行コマンド / 設定ファイル - .rc サフィックスは、実行時設定ファイル(例: .bashrc, .vimrc)の Unix における慣習です。Windows リソーススクリプトとは関係ありません。
RC ファイルを開くプログラム
技術的詳細
詳細仕様| フォーマットタイプ | プレーンテキストソースファイル - C プリプロセッサ構文とリソース定義キーワードの組み合わせ |
| エンコーディング | ASCII(手動作成)または BOM 付き UTF-16 LE(Visual Studio リソースエディタの出力) |
| コンパイラ | rc.exe (Windows SDK / Visual Studio); windres (MinGW / GNU Binutils クロスコンパイル用) |
| 出力形式 | バイナリ .res ファイル。リンカーによって PE(EXE または DLL)にリンクされる |
| サポートされるリソースタイプ | DIALOG/DIALOGEX, MENU, STRINGTABLE, ICON, BITMAP, CURSOR, VERSIONINFO, ACCELERATORS, RCDATA |
| プリプロセッサのサポート | 完全な C プリプロセッサ - #include, #define, #ifdef ディレクティブをサポート |
| UTF-16 LE BOM | Visual Studio リソースエディタによって書き込まれます。手動作成の .rc ファイルでは任意です |
| DIALOGEX | Win32(1993年頃)で導入された拡張ダイアログリソースタイプ。ヘルプ ID と拡張スタイルをサポート |
| VERSIONINFO ブロック | 製品名、バージョン文字列、ファイルの説明、および著作権をバイナリに埋め込みます |
| 一般的なファイルサイズ | 1 KB - 200 KB。バイナリデータが RCDATA 経由でインライン化されている場合はより大きくなります |
| プラットフォーム | Windows (形式および rc.exe); windres を介して Linux/macOS 上でクロスコンパイル可能 |
| 形式の安定性 | Windows 3.0 以降、コア設計は変更されていません。2026 年現在も標準的な Win32 リソースメカニズムです |
| 関連ヘッダー | resource.h - 数値リソース ID 定数定義を含む、Visual Studio によって自動生成されるファイル |
| .NET での代替 | マネージド .NET アプリケーションリソース用の .resx / .resources ファイル |
| リリース日 | 1985 (Windows 1.0 SDK resource compiler) |
| 最新バージョン | RC format is stable; Windows SDK rc.exe ships with Visual Studio 2022 (current) |
| 仕様書 | learn.microsoft.com |
RC の変換
コミュニティ Q&A
ユーザーからの質問まだ質問はありません。RC ファイルについて最初の質問をしてみましょう。