Dela via


Resurskompilatorfel RW2001

Ogiltigt direktiv i förbearbetad RC-fil

Anmärkningar

RC-filen innehåller ett #pragma direktiv.

Använd #ifndef förprocessordirektivet med den RC_INVOKED konstant som resurskompilatorn definierar när den bearbetar en inkluderingsfil. Placera #pragma-direktivet i ett kodblock som inte bearbetas när konstanten RC_INVOKED definieras. Kod i blocket bearbetas endast av C/C++-kompilatorn och inte av resurskompilatorn. Följande exempelkod visar den här tekniken:

#ifndef RC_INVOKED
#pragma pack(2)  // C/C++ only, ignored by Resource Compiler
#endif

Det #pragma förprocessordirektivet har ingen betydelse i en . RC-fil. Det #include förprocessordirektivet används ofta i en . RC-fil som ska innehålla en rubrikfil (antingen en projektbaserad anpassad rubrikfil eller en standardhuvudfil som tillhandahålls av Microsoft med en av dess produkter). Några av dessa inkluderar filer som innehåller #pragma-direktivet . Eftersom en rubrikfil kan innehålla en eller flera andra huvudfiler kanske filen som innehåller det felaktiga #pragma direktivet inte är omedelbart uppenbar.

Den #ifndef RC_INVOKED tekniken kan styra inkludering av headerfiler i projektbaserade headerfiler.