Condividi tramite


Attività del compilatore di messaggi

Windows Driver Kit (WDK) fornisce l'attività MessageCompiler in modo da poter eseguire lo strumento di MC.exe quando si compila il driver usando MSBuild. Per informazioni sull'uso di MC.exe, vedere Compilatore di messaggi (MC.exe).For information about using MC.exe, see Message Compiler (MC.exe).

MSBuild usa MessageCompile Item per inviare i parametri per l'attività MessageCompiler. L'elemento MessageCompile accede ai metadati dell'elemento per mc.exe nei file di progetto.

Nell'esempio seguente viene illustrato come modificare i metadati nel file .vcxproj.

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

L'esempio seguente mostra la chiamata della riga di comando:

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

Nell'esempio precedente, MSBuild richiama mc.exe nel file a.mc, con l'opzione –s perché i metadati GenerateBaselineResource sono impostati su true. INOLTRE, MSBuild usa i metadati BaselineResourcePath per specificare l'argomento per l'opzione -s.

Parametro dell'attività MessageCompiler Metadati degli elementi Opzione strumento
recenti

Parametro stringa facoltativo. Specifica il nome del file manifesto da compilare. Specifica il nome di un file di messaggio da compilare.

@(MessageCompile)

<filename.man>

<filename.mc>

ANSIInputFile

Specifica che il file di input è ANSI (impostazione predefinita).

%(MessageCompile.ANSIInputFile) -a
ANSIMessageInBinFile

Specifica che i messaggi in . Il file BIN deve essere ANSI.

%(MessageCompile.ANSIMessageInBinFile) -A
EnableDebugOutputPath

Se è impostato su true, abilita l'opzione –x.

%(MessageCompile.EnableDebugOutputPath)
DebugOutputPath

Specifica la cartella in cui il compilatore inserisce il file di inclusione con estensione dbg C. Il file con estensione dbg esegue il mapping degli ID dei messaggi ai relativi nomi simbolici.

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

Aggiunge la macro callout per richiamare il codice utente durante la registrazione. Questa opzione non è valida per C# e viene ignorata.

%(MessageCompile.EnableCallOutMacro) -Co
EventmanPath

Specifica il percorso del file eventman.xsd.

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

Se è impostato su true, abilita l'opzione -s.

%(MessageCompile.GenerateBaselineResource)
BaselineResourcePath

Genera una risorsa binaria per provider. Genera MCGenResource.BIN di risorse globali di riepilogo.

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

Genera la classe di registrazione C# (gestita) basata sulla classe di evento FX3.5.

%(MessageCompile.GenerateC#LoggingClass) Spaziodei nomi> -cs<
GenerateC#StaticLoggingClass

Genera una classe di registrazione C# statica (gestita) basata sulla classe di evento FX3.5.

%(MessageCompile.GenerateC#StaticLoggingClass) Spaziodei nomi> -css<
GeneratedFilesBaseName

Specifica il nome di base dei file generati. Il valore predefinito è il nome di base del file di input.

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

Se è impostato su true, abilita l'opzione -h.

%(MessageCompile.GeneratedHeaderPath)
HeaderFilePath

Specifica il percorso del percorso in cui creare il file di inclusione C. Il valore predefinito è ..

%(MessageCompile.HeaderFilePath) -h<path>
GeneratedRcAndMessagesPath

Se è impostato su true, abilita l'opzione -r.

%(MessageCompile.GeneratedRcAndMessagesPath)
RCFilePath

Specifica il percorso dell'rc include il file e i file di risorse dei messaggi binari inclusi. Il valore predefinito è ..

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

Genera macro di registrazione in modalità kernel.

%(MessageCompile.GenerateKernelModeLoggingMacros) -km
GenerateMOFFile

Genera il supporto di livello inferiore per tutte le funzioni e le macro generate. Il file MOF viene generato dal manifesto. Il file MOF viene inserito nel percorso specificato dall'opzione "-h".

%(MessageCompile.GenerateMOFFile) -Mof
GenerateOLE2Header

Genera il file di intestazione OLE2. Usa la definizione HRESULT anziché la definizione del codice di stato.

%(MessageCompile.GenerateOLE2Header) -o
GenerateUserModeLoggingMacros

Genera macro di registrazione in modalità utente.

%(MessageCompile.GenerateUserModeLoggingMacros) -um
HeaderExtension

Specifica l'estensione per il file di intestazione (1-3 caratteri).

%(MessageCompile.HeaderExtension) -e<extension>
MaximumMessageLength

Genera un avviso se le dimensioni di qualsiasi messaggio superano <i caratteri di lunghezza> .

%(MessageCompile.MaximumMessageLength) -m<lunghezza>
PrefissoMacroName

Definisce il prefisso del nome della macro applicato a ogni macro di registrazione generata. Il valore predefinito è "EventWrite".

%(MessageCompile PrefixMacroName) -p<prefisso>
RemoveCharsFromSymbolName

Definisce il testo all'inizio di ogni nome del simbolo di evento da rimuovere prima di formare i nomi delle macro. Il valore predefinito è NULL.

%(RemoveCharsFromSymbolName) -P<prefisso>
SetCustomerbit

Imposta il bit Customer nell'intero ID messaggio.

%(MessageCompile.SetCustomerbit) -c
TerminateMessageWithNull

Termina tutte le stringhe con caratteri Null nelle tabelle dei messaggi.

%(MessageCompile.TerminateMessageWithNull) -n
UnicodeInputFile

Il file di input è Unicode.

%(MessageCompile.UnicodeInputFile) -u
UnicodeMessageInBinFile

Messaggi in . Il file BIN deve essere Unicode (impostazione predefinita).

%(MessageCompile.UnicodeMessageInBinFile) -U
UseBaseNameOfInput

Specifica che . Il nome del file BIN deve avere il nome file .mc incluso per l'univocità.

%(MessageCompile. UseBaseNameOfInput) -b
UseDecimalValues

Specifica i valori FACILTY e GRAVITÀ nel file di intestazione in decimale. Imposta i valori del messaggio nell'intestazione su decimale inizialmente.

%(MessageCompile.UseDecimalValues) -d
ValidateAgainstBaselineResource

Se questa opzione è impostata su true, genera l'opzione -t.

%(MessageCompile.ValidateAgainstBaselineResource)
BaselinePath

Convalida rispetto alla risorsa di base.

%(MessageCompile.BaselinePath) -t<percorso>
Verbose

Specifica l'output dettagliato.

%(MessageCompile.Verbose) -v
WinmetaPath

Specifica il percorso del file winmeta.xml.

%(MessageCompile.WinmetaPath) -W<file>

Compilatore di messaggi (MC.exe)