Что такое формат файла RC?
Файл .rc - это текстовый исходный файл, определяющий ресурсы приложения Windows - элементы пользовательского интерфейса и двоичные данные, которые компилируются и связываются в исполняемый файл (.exe) или библиотеку динамической компоновки (.dll). Ресурсы, определенные в файле .rc, включают диалоговые окна, меню, таблицы строк, иконки, курсоры, растровые изображения, блоки информации о версии, таблицы акселераторов и произвольные двоичные данные (RCDATA).
Формат использует синтаксис препроцессора C: файлы .rc обычно начинаются с #include "resource.h" для подключения констант числовых идентификаторов и поддерживают макросы #define. Компилятор ресурсов rc.exe (часть Windows SDK) преобразует файл .rc в бинарный файл .res, который компоновщик затем внедряет в финальный исполняемый файл PE.
Редактор ресурсов Visual Studio сохраняет файлы .rc в кодировке UTF-16 LE с BOM, в то время как файлы, созданные вручную, обычно используют ASCII. Кроссплатформенные наборы инструментов MinGW/GCC включают windres, который компилирует файлы .rc для Windows на Linux или macOS.
Формат .rc остается стабильным со времен Windows 3.0 и по-прежнему является стандартным механизмом для ресурсов Win32 в 2026 году. В проектах .NET управляемые ресурсы вместо этого используют файлы .resx и .resources.
- Тип ресурса
DIALOGEX(расширенные диалоги) был представлен в Win32 примерно в 1993 году. - Resource Hacker - популярный инструмент для просмотра и редактирования ресурсов, уже скомпилированных в файлы
.exeи.dll. windres- это эквивалентrc.exeиз GNU Binutils для целей кросс-компиляции.
Безопасность и защита
РИСК: LOWТекстовый исходный файл, который требует компиляции для использования. Сам по себе не содержит исполняемого кода - только определения ресурсов. Проверяйте исходный текст любым редактором перед компиляцией из ненадежных источников; блоки RCDATA могут содержать произвольные двоичные данные, которые станут частью скомпилированного EXE.
Детали формата
в двух словах- Конфигурационный файл браузера Lynx - Текстовый браузер Lynx для Unix использует ~/.lynxrc (иногда .rc) как текстовый файл конфигурации среды выполнения - не связан с ресурсами Windows.
- Общие команды запуска / файл конфигурации Unix - Суффикс .rc является соглашением Unix для файлов конфигурации среды выполнения (например, .bashrc, .vimrc) - не имеет отношения к сценариям ресурсов Windows.
Программы, открывающие файлы RC
Технические подробности
глубокая спецификация| Тип формата | Текстовый исходный файл - синтаксис препроцессора C в сочетании с ключевыми словами определения ресурсов |
| Кодировка | ASCII (созданные вручную) или UTF-16 LE с BOM (результат редактора ресурсов 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); поддерживает идентификаторы справки и расширенные стили |
| Блок VERSIONINFO | Внедряет название продукта, строку версии, описание файла и авторские права в бинарный файл |
| Типичный размер файла | 1 КБ - 200 КБ; больше, если двоичные данные встроены через RCDATA |
| Платформа | Windows (формат и rc.exe); кросс-компиляция на Linux/macOS через windres |
| Стабильность формата | Основная структура не менялась со времен Windows 3.0; по-прежнему стандартный механизм ресурсов Win32 в 2026 году |
| Связанный заголовок | resource.h - автоматически генерируется Visual Studio с определениями констант числовых идентификаторов ресурсов |
| Альтернатива в .NET | Файлы .resx / .resources для управляемых ресурсов приложений .NET |
| Выпущен | 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
Вопросы и ответы сообщества
спрошено пользователямиВопросов пока нет - станьте первым, кто спросит о файлах RC.