RC.EXE: Der Ressourcen-Compiler des Microsoft SDK

Aus RAD Studio
Wechseln zu: Navigation, Suche

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.
  • 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.

Siehe auch