Sdílet prostřednictvím


Úloha kompilátoru zpráv

Sada Windows Driver Kit (WDK) poskytuje úlohu MessageCompiler, abyste mohli spustit nástroj MC.exe při sestavování ovladače pomocí nástroje MSBuild. Informace o použití MC.exenaleznete v tématu Kompilátor zpráv (MC.exe).

Nástroj MSBuild používá položku MessageCompile k odeslání parametrů pro úlohu MessageCompiler. Položka MessageCompile přistupuje k metadatům položky pro mc.exe v souborech projektu.

Následující příklad ukazuje, jak upravit metadata v souboru .vcxproj.

<ItemGroup>
    <MessageCompile Include="a.mc">
      <GenerateBaselineResource>true</GenerateBaselineResource>
      <BaselineResourcePath>c:\test\</BaselineResourcePath>
    </MessageCompile>
</ItemGroup>

Následující příklad ukazuje vyvolání příkazového řádku:

mc.exe –s "c:\test\" a.mc

V příkladu výše nástroj MSBuild vyvolá mc.exe v souboru a.mc s přepínačem –s, protože metadata GenerateBaselineResource je nastavena na hodnotu true. Nástroj MSBuild používá také metadata BaselineResourcePath k určení argumentu přepínače –s.

Parametr úlohy MessageCompiler Metadata položek Přepínač nástrojů
Zdroje

Volitelný parametr řetězce. Určuje název souboru manifestu, který se má zkompilovat. Určuje název souboru zprávy, který se má zkompilovat.

@(MessageCompile)

<název_souboru.man>

<filename.mc>

ANSIInputFile

Určuje, že vstupní soubor je ANSI (výchozí).

%(MessageCompile.ANSIInputFile) -a
ANSIMessageInBinFile

Určuje, že zprávy v souboru .BIN mají být ANSI.

%(MessageCompile.ANSIMessageInBinFile) -A
EnableDebugOutputPath

Pokud je nastavená hodnota true, povolí se přepínač -x.

%(MessageCompile.EnableDebugOutputPath)
DebugOutputPath

Určuje složku, do které kompilátor umístí soubor .dbg C include. Soubor .dbg mapuje ID zpráv na jejich symbolické názvy.

%(MessageCompile.DebugOutputPath) -x<cesta>
EnableCallOutMacro

Přidá makro pro vyvolání uživatelského kódu během protokolování. Tento přepínač není platný pro jazyk C# a je ignorován.

%(MessageCompile.EnableCallOutMacro) -co
EventmanPath

Určuje cestu k souboru eventman.xsd.

%(MessageCompile.EventmanPath) -w<soubor>
GenerateBaselineResource

Pokud je nastavená hodnota true, povolí se přepínač -s.

%(MessageCompile.GenerateBaselineResource)
BaselineResourcePath

Generuje binární zdroj pro každého poskytovatele. Generuje souhrnné globální MCGenResource.BIN prostředků.

%(MessageCompile.BaselineResourcePath) -s<cesta>
GenerateC#LoggingClass

Generuje třídu protokolování jazyka C# (spravovaná) na základě třídy událostí FX3.5.

%(MessageCompile.GenerateC#LoggingClass) -cs<jmenný prostor>
GenerateC#StaticLoggingClass

Generuje statickou třídu protokolování jazyka C# (spravovaná) na základě třídy událostí FX3.5.

%(MessageCompile.GenerateC#StaticLoggingClass) -css<jmenný prostor>
GeneratedFilesBaseName

Určuje základní název vygenerovaných souborů. Výchozí hodnota je základní název vstupního souboru.

%(MessageCompile.GeneratedFilesBaseName) -z<basename>
GeneratedHeaderPath

Pokud je nastavená hodnota true, povolí se přepínač -h.

%(MessageCompile.GeneratedHeaderPath)
HeaderFilePath

Určuje cestu, kam se má vytvořit soubor hlavičky jazyka C. Výchozí hodnota je ..

%(MessageCompile.HeaderFilePath) -h<cesta>
GenerovanáCestaRcAMessages

Pokud je nastavená hodnota true, povolí se přepínač -r.

%(MessageCompile.GeneratedRcAndMessagesPath)
RCFilePath

Určuje cestu k souboru zahrnujícímu RC a ke souborům binárních zpráv, které zahrnuje. Výchozí hodnota je ..

%(MessageCompile.RCFilePath) -r<cesta>
GenerateKernelModeLoggingMacros

Generuje makra protokolování režimu jádra.

%(MessageCompile.GenerateKernelModeLoggingMacros) -kilometr
GenerateMOFFile

Generuje podporu nižší úrovně pro všechny funkce a makra, která se generují. Soubor MOF se vygeneruje z manifestu. Soubor MOF se umístí do umístění určeného přepínačem "-h".

%(MessageCompile.GenerateMOFFile) -mof
GenerateOLE2Header

Vygeneruje soubor záhlaví OLE2. Místo definice stavového kódu používá definici HRESULT.

%(KompilaceZpráv.VygenerovatOLE2Hlavičku) -o
GenerovatMakraProProtokolováníVRežimuUživatele

Generuje makra protokolování uživatelského režimu.

%(MessageCompile.GenerateUserModeLoggingMacros) -µm
HeaderExtension

Určuje příponu hlavičkového souboru (1–3 znaků).

%(MessageCompile.HeaderExtension) -e<rozšíření>
MaximumMessageLength

Vygeneruje upozornění, pokud velikost zprávy překračuje <délkové> znaky.

%(MessageCompile.MaximumMessageLength) -m<délka>
PrefixMacroName

Definuje předponu názvu makra, která je použita pro každé vygenerované protokolovací makro. Výchozí hodnota je EventWrite.

%(MessageCompile PrefixMacroName) -p<– předpona>
RemoveCharsFromSymbolName

Definuje text na začátku názvu symbolu každé události, který se má odebrat před vytvořením názvů maker. Výchozí hodnota je NULL.

%(Odstranit znaky z názvu symbolu) -P<předpona>
SetCustomerbit

Nastaví bit zákazníka ve všech ID zpráv.

%(MessageCompile.SetCustomerbit) -c
TerminateMessageWithNull

Ukončí všechny řetězce se znaky null v tabulkách zpráv.

%(MessageCompile.TerminateMessageWithNull) -n
UnicodeInputFile

Vstupní soubor je Unicode.

%(MessageCompile.UnicodeInputFile) -u
UnicodeMessageInBinFile

Zprávy v souboru .BIN by měly být ve formátu Unicode (výchozí).

%(MessageCompile.UnicodeMessageInBinFile) -U
PoužijZákladníNázevVstupu

Určuje, že název souboru .BIN by měl obsahovat název souboru .mc pro zajištění jedinečnosti.

%(MessageCompile. UseBaseNameOfInput) -b
UseDecimalValues

Určuje hodnoty FACILITY a SEVERITY v hlavičkovém souboru v desítkové soustavě. Nastaví hodnoty zpráv v záhlaví na počáteční desetinné číslo.

%(MessageCompile.UseDecimalValues) -d
ValidateAgainstBaselineResource

Pokud je nastavená hodnota true, vygeneruje přepínač -t.

%(SestavaZprávy.OvěřitProtiZákladnímuZdroji)
Základní cesta

Ověřuje se vůči srovnávacímu zdroji.

%(MessageCompile.BaselinePath) -t<cesta>
Rozvláčný

Určuje podrobný výstup.

%(MessageCompile.Verbose) -v
WinmetaPath

Určuje cestu k souboru winmeta.xml.

%(MessageCompile.WinmetaPath) -W<soubor>

Kompilátor zpráv(MC.exe)