Hva er RC-filformatet?
En .rc-fil er en kildekodefil i ren tekst som definerer ressurser for Windows-applikasjoner - elementer i brukergrensesnittet og binærdata som kompileres og lenkes inn i en kjørbar fil (.exe) eller et dynamisk koblingsbibliotek (.dll). Ressurser definert i en .rc-fil inkluderer dialogbokser, menyer, strengtabeller, ikoner, markører, punktgrafikk, versjonsinformasjonsblokker, hurtigtasttabeller og vilkårlige binærdata (RCDATA).
Formatet bruker C-preprosessor-syntaks: .rc-filer starter vanligvis med #include "resource.h" for å hente inn numeriske identifikatorkonstanter, og de støtter #define-makroer gjennom hele filen. Ressurskompilatoren rc.exe (en del av Windows SDK) behandler .rc-filen til en binær .res-fil, som lenkeren deretter bygger inn i den endelige PE-kjørbare filen.
Visual Studios ressursredigerer lagrer .rc-filer som UTF-16 LE med en BOM, mens manuelt skrevne filer vanligvis er ASCII. Kryssplattform-verktøykjeder som MinGW/GCC inkluderer windres, som kompilerer .rc-filer for Windows-mål på Linux eller macOS.
.rc-formatet har vært stabilt siden Windows 3.0-æraen og forblir standardmekanismen for Win32-ressurser i 2026. I .NET-prosjekter bruker administrerte ressurser .resx- og .resources-filer i stedet.
- Ressurstypen
DIALOGEX(utvidede dialogbokser) ble introdusert med Win32 rundt 1993. - Resource Hacker er et populært verktøy for å vise og redigere ressurser som allerede er kompilert inn i
.exe- og.dll-filer. windreser GNU Binutils-ekvivalenten tilrc.exefor krysskompileringsmål.
Sikkerhet og trygghet
RISIKO: LOWKildekodefil i ren tekst som krever kompilering for å være nyttig. Inneholder ingen kjørbar kode i seg selv - kun ressursdefinisjoner. Inspiser råtekst med et redigeringsprogram før du kompilerer fra utrolige kilder; RCDATA-blokker kan inneholde vilkårlige binære data som blir en del av den kompilerte EXE-filen.
Formatdetaljer
i et nøtteskall- Lynx Browser konfigurasjonsfil - Unix tekstmodus-nettleseren Lynx bruker ~/.lynxrc (noen ganger .rc) som en konfigurasjonsfil i ren tekst - ikke relatert til Windows-ressurser.
- Generiske Unix Run Commands / konfigurasjonsfil - .rc-suffikset er en Unix-konvensjon for konfigurasjonsfiler (f.eks. .bashrc, .vimrc) - ingen relasjon til Windows-ressursskript.
Programmer som åpner RC-filer
Tekniske detaljer
dyp spesifikasjon| Format-type | Kildekodefil i ren tekst - C-preprosessor-syntaks kombinert med nøkkelord for ressursdefinisjon |
| Koding | ASCII (manuelt skrevet) eller UTF-16 LE med BOM (resultat fra Visual Studio ressursredigerer) |
| Kompilator | rc.exe (Windows SDK / Visual Studio); windres (MinGW / GNU Binutils for krysskompilering) |
| Utdataformat | Binær .res-fil, lenket inn i en PE (EXE eller DLL) av lenkeren |
| Støttede ressurstyper | DIALOG/DIALOGEX, MENU, STRINGTABLE, ICON, BITMAP, CURSOR, VERSIONINFO, ACCELERATORS, RCDATA |
| Preprosessor-støtte | Full C-preprosessor - #include, #define, #ifdef-direktiver støttes |
| UTF-16 LE BOM | Skrevet av Visual Studio ressursredigerer; valgfritt for manuelt skrevne .rc-filer |
| DIALOGEX | Utvidet dialogressurstype introdusert med Win32 (~1993); støtter hjelpe-ID-er og utvidede stiler |
| VERSIONINFO-blokk | Bygger inn produktnavn, versjonsstreng, filbeskrivelse og opphavsrett i den binære filen |
| Typisk filstørrelse | 1 KB - 200 KB; større når binærdata er inkludert via RCDATA |
| Plattform | Windows (format og rc.exe); krysskompilert på Linux/macOS via windres |
| Formatstabilitet | Kjernedesign uendret siden Windows 3.0; fortsatt standard Win32-ressursmekanisme i 2026 |
| Relatert header | resource.h - autogenerert av Visual Studio med definisjoner av numeriske ressurs-ID-konstanter |
| .NET-alternativ | .resx / .resources-filer for administrerte .NET-applikasjonsressurser |
| Utgitt | 1985 (Windows 1.0 SDK resource compiler) |
| Siste versjon | RC format is stable; Windows SDK rc.exe ships with Visual Studio 2022 (current) |
| Spesifikasjon | learn.microsoft.com |
RC-konverteringer
Spørsmål og svar fra fellesskapet
spurt av brukereIngen spørsmål ennå - vær den første til å spørre om RC-filer.