.RC

RC File

Windows Resource Script
Ask a question
QUICK ANSWER

An RC file is a Windows Resource Script - a plain-text source file that defines UI resources (dialogs, menus, icons, string tables, version info) for Windows applications. Developers open it with Visual Studio or any text editor, then compile it with rc.exe into a binary .res file that gets linked into an EXE or DLL. The file itself contains no executable code and cannot run on its own.

Developer: Microsoft Corporation (format); also used with Embarcadero/Borland tools Category: Developer Files MIME: text/plain
OPENS ON Windows Linux
Related: .DO · .MD · .HEX · .XSD

On this page

19k+ extensions indexed
Last reviewed Jun 16, 2026

Not sure what your file is?

Drop any file into our identifier - we read just the first bytes to name the format.

Identify a file

What is the RC file format?

An .rc file is a plain-text source file that defines Windows application resources - user-interface elements and binary data compiled and linked into an executable (.exe) or dynamic-link library (.dll). Resources defined in an .rc file include dialog boxes, menus, string tables, icons, cursors, bitmaps, version information blocks, accelerator tables, and arbitrary binary data (RCDATA).

The format uses C preprocessor syntax: .rc files typically begin with #include "resource.h" to pull in numeric identifier constants, and they support #define macros throughout. The resource compiler rc.exe (part of the Windows SDK) processes the .rc file into a binary .res file, which the linker then embeds into the final PE executable.

Visual Studio's resource editor saves .rc files as UTF-16 LE with a BOM, while hand-authored files are typically ASCII. Cross-platform MinGW/GCC toolchains include windres, which compiles .rc files for Windows targets on Linux or macOS.

The .rc format has been stable since the Windows 3.0 era and remains the standard mechanism for Win32 resources in 2026. In .NET projects, managed resources use .resx and .resources files instead.

  • The DIALOGEX resource type (extended dialogs) was introduced with Win32 around 1993.
  • Resource Hacker is a popular tool for viewing and editing resources already compiled into .exe and .dll files.
  • windres is the GNU Binutils equivalent of rc.exe for cross-compilation targets.

Security & safety

RISK: LOW

Plain-text source file that requires compilation to be useful. Contains no executable code by itself - only resource definitions. Inspect raw text with any editor before compiling from untrusted sources; RCDATA blocks can embed arbitrary binary payloads that become part of the compiled EXE.

Format details

in a nutshell
FULL NAMEWindows Resource Scriptaka C/C++ resource script, RC file
DEVELOPERMicrosoft Corporation (format); also used with Embarcadero/Borland toolssince 1985 (Windows 1.0 SDK resource compiler)
MIME TYPEtext/plain
TYPEPlain-text source file compiled into Windows binary resources
This extension is also used by…
  • Lynx Browser Configuration File - Unix text-mode browser Lynx uses ~/.lynxrc (sometimes .rc) as a plain-text runtime configuration file - unrelated to Windows resources.
  • Generic Unix Run Commands / Config file - .rc suffix is a Unix convention for runtime configuration files (e.g., .bashrc, .vimrc) - no relation to Windows resource scripts.

Programs that open RC files

Windows5 apps
Borland C++ Paid Legacy Borland C++ IDE with integrated resource editor - discontinued.
Embarcadero C++Builder Paid Project resources in C++Builder are managed via the Resource Workshop-style editor. Open the .rc from the project resource node.
Resource Hacker Free Compile and edit .rc scripts, or extract/modify resources in compiled EXE/DLL. File → Open.
Microsoft Visual Studio 2022 Freemium Open the project in Visual Studio; .rc files appear in Solution Explorer under Resource Files. Double-click to open the graphical Resource Editor, or right-click → View Code for raw text.
Notepad / VS Code Open-source Open directly as plain text. C syntax highlighting applies. No compile or execute functionality.
Linux1 app
GNU windres (MinGW/binutils) Open-source windres --input file.rc --output file.res - compiles Windows .rc resource scripts in cross-build environments.

Technical details

deep spec
Format typePlain-text source file - C preprocessor syntax combined with resource definition keywords
EncodingASCII (hand-authored) or UTF-16 LE with BOM (Visual Studio resource editor output)
Compilerrc.exe (Windows SDK / Visual Studio); windres (MinGW / GNU Binutils for cross-compilation)
Output formatBinary .res file, linked into a PE (EXE or DLL) by the linker
Supported resource typesDIALOG/DIALOGEX, MENU, STRINGTABLE, ICON, BITMAP, CURSOR, VERSIONINFO, ACCELERATORS, RCDATA
Preprocessor supportFull C preprocessor - #include, #define, #ifdef directives supported
UTF-16 LE BOMWritten by Visual Studio resource editor; optional for hand-authored .rc files
DIALOGEXExtended dialog resource type introduced with Win32 (~1993); supports help IDs and extended styles
VERSIONINFO blockEmbeds product name, version string, file description, and copyright into the binary
Typical file size1 KB - 200 KB; larger when binary data is inlined via RCDATA
PlatformWindows (format and rc.exe); cross-compiled on Linux/macOS via windres
Format stabilityCore design unchanged since Windows 3.0; still the standard Win32 resource mechanism in 2026
Related headerresource.h - auto-generated by Visual Studio with numeric resource ID constant definitions
.NET alternative.resx / .resources files for managed .NET application resources
Released1985 (Windows 1.0 SDK resource compiler)
Latest versionRC format is stable; Windows SDK rc.exe ships with Visual Studio 2022 (current)
Specificationlearn.microsoft.com

RC conversions

Community Q&A

asked by users
Ask a quick question
Get help from people who work with RC files. Be specific - include your system and software version.
No account needed · answers usually within a day

No questions yet - be the first to ask about RC files.

Frequently asked questions

What is an .rc file used for?
It defines UI resources (dialogs, menus, icons, strings, version info) for Windows C/C++ applications. The resource compiler (rc.exe) compiles it into a .res file linked into the final EXE or DLL.
Can I open a .rc file without Visual Studio?
Yes - open it with any text editor (Notepad++, VS Code) since it is plain text. For compiling, you can use the free Windows SDK rc.exe or GNU windres.
How do I compile a .rc file?
From a Visual Studio Developer Command Prompt: 'rc.exe myresource.rc'. This produces myresource.res. Your C/C++ linker links the .res into the EXE/DLL.
What is the difference between .rc and .res?
.rc is the human-readable source text. .res is the compiled binary output. The build pipeline is: .rc → rc.exe → .res → linker → EXE/DLL.
My EXE opens .rc files - how do I change the icon?
Edit the ICON line in the .rc file to point to a new .ico file, then recompile. Or use Resource Hacker to replace the icon in the already-compiled EXE without recompiling.

References

1Microsoft Learn - About Resource Files (Win32)learn.microsoft.com
2Microsoft Learn - Resource Files (C++) - Visual Studiolearn.microsoft.com

Keep exploring

across the database

Top extensions this week

1.AQQAQQ Instant Messenger File
2.CRDOWNLOADChrome Partial Download File
3.PARTPartial Download File
4.DATProgram Data File (generic)
5.EXEWindows Executable (Portable Executable)
6.BINCD/DVD Disc Image (BIN/CUE)
7.RPMSGRestricted Permission Message
8.NOMEDIAAndroid No-Media Marker File
9.MDMarkdown Document
10.TMPTemporary File

Related extensions

.DOStata Do-File
.MDMarkdown Document
.HEXIntel HEX File
.XSDXML Schema Definition
.MAPSource Map (JavaScript / CSS)
.CONFIGConfiguration File

Free file tools

An in-browser file identifier and image converter - everything runs on your device.

Open the toolbox

Browse file extensions A-Z