RC.EXE: Der Ressourcen-Compiler des Microsoft SDK
Nach oben zu Befehlszeilenhilfsprogramme - Index
RC ist die Befehlszeilenversion des Standardressourcen-Compilers des Microsoft SDK. Er verarbeitet eine Ressourcen-Skriptdatei (RC) und erzeugt daraus eine Ressourcendatei mit Objektcode (RES).
Sowohl in C++Builder 2009 als auch in Delphi 2009 können Sie unter verschiedenen Ressourcen-Compilern auswählen. Im Dialogfeld Projekt > Optionen > Ressourcen-Compiler können Sie einen der folgenden auswählen:
- BRCC32.exe, der Ressourcen-Compiler von C++Builder
- RC.exe, der Ressourcen-Compiler des Microsoft Plattform SDK
RC unterstützt Unicode-Zeichen in Ressourcendateien und Dateinamen sowie neue Vista-Ressourcentypen, wie z.B. Symbole mit Alphakanal.
Der tatsächliche Dateiname des RC-Compilers in der RAD Studio-Umgebung lautet CGRC.exe.
Unterschiede zwischen BRCC32 und RC
Wenn Sie sich für RC entscheiden, müssen Sie einige Unterschiede zwischen BRCC32 und RC beachten und in vorhandene .RC-Dateien einfügen:
- Zur Verwendung von Windows-Typen oder -Konstanten mit RC müssen Sie für C++ und Delphi diese Codezeile
#include winresrc.h
einfügen.
- RC behandelt keine Bilddaten inline wie BRCC32. Zur Verwendung eines Bildes mit RC müssen Sie das Bild speichern und inline auf das Bild verweisen.
- RC behandelt Zeilenfortsetzungen anders als BRCC32. Die einfachste Änderung ist, Strings mit dem eingebetteten Zeichen für neue Zeilen (
\n
) zu verbinden. - Die Reihenfolge der Befehlselemente bei RC erfordert, dass alle Befehlsoptionen vor dem Namen der Ressourcendatei aufgeführt sein müssen.
- RC lässt keine Kommas nach dem String in einer
STRINGLIST
zu. - RC behandelt Strings als Strings im C-Stil. Das bedeutet, dass Sie entweder
- einen einzelnen Backslash (
\
) in Dateinamen maskieren, indem Sie doppelte Backslashs (\\
) verwenden. Oder - einen Schrägstrich (
/
) anstelle des einzelnen Backslashs (\
) verwenden.
- einen einzelnen Backslash (
- Die Angabe von
#include <Verzeichnisname>
führt bei RC nicht zum Durchsuchen des aktuellen Verzeichnisses. Um das aktuelle Verzeichnis zu durchsuchen, müssen Sie
#include "Verzeichnisname"
verwenden.
- Um ein doppeltes Anführungszeichen in einen String einzubetten, müssen Sie das Zeichen zweimal angeben (
""
), anstatt das Escape-Zeichen Backslash zu verwenden. - RCDATA und Byte-Werte werden unterschiedlich behandelt. Zum Beispiel:
- BRCC32 behandelt
'11 aa 22 bb'
als einen Byte-String. - Bei RC müssten Sie
0xaa11 0xbb22
angeben.
- BRCC32 behandelt