Error spawning 'rc.exe'

Beim Kompilieren eines alten C++ Projects unter Windows Vista kam es bei mir zu folgendem Fehler

Error spawning ‘rc.exe’.

Mehr gabs nicht dazu zu sagen. Auf anderen Systemen war das kompilieren kein Problem.

Die Lösung ist denkbar einfach - glaubt man: Sucht die Datei rc.exe auf eurem System und tragt den entsprechenden Pfad unter ToolsOptionsProjects and SolutionsVC++ Directories ein. Fehlt rc.exe, so kann man diese im Microsoft Windows SDK-Paket herunterladen. Beachtet dabei, dass es für unterschiedliche Plattformen (Win32, x64, Itanium) zu unterschiedlichen Einträgen kommen muss. Hier sollte entweder ein fester Pfad oder die Angabe $(WindowsSdkDir)\bin bzw. $(WindowsSdkDir)\bin\x64 zu finden sein.

Manchmal reicht das aus ;)
Ist das Windows SDK installiert und es es funktioniert nur mit festen Pfaden (die ihr nicht wollt, da man dann die Links bei jedem SDK-Update wieder anpassen muss), so kann auch ein falscher Eintrag in der Registry schuld sein. Im Pfad HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows steht die Zeichenfolge mit dem Namen CurrentInstallFolder. Diser sollte auf das aktuelle Verzeichnis der SDK zeigen (bei Änderung ist ein Neustart von Visual Studio notwendig). Man kann im Übrigen leicht prüfen, auf was das Macro $(WindowsSdkDir) wirklich zeigt, indem man in den Eigenschaften eines Projekts die Command Line des Pre-Build-Events ändert und sich dort die Macro-Liste anschaut.

Manchmal reicht das aus ;)
Die Einstellungen in diesem Schlüssel waren bei mir korrekt - und dennoch kam es zu dem Fehler, da das Macro immer noch hartnäckig auf den falschen Pfad verwies. Bei der weiteren Suche ist mir noch der Pfad HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Microsoft SDKs\Windows untergekommen. Und hier stand (wieder mit dem Namen CurrentInstallFolder) der richtige Pfad zur falschen Version ;) Schnell geändert, VS neu gestartet und endlich klappts auch wieder mit C++…