Tarefa do compilador de mensagem
O WDK (Kit de Driver do Windows) fornece a tarefa MessageCompiler para que você possa executar a ferramenta MC.exe ao criar seu driver usando o MSBuild. Para obter informações sobre como usar MC.exe, consulte Compilador de mensagens (MC.exe).
O MSBuild usa o Item MessageCompile para enviar os parâmetros para a tarefa MessageCompiler. O item MessageCompile acessa os metadados do item para mc.exe em arquivos de projeto.
O exemplo a seguir mostra como editar os metadados no arquivo .vcxproj.
<ItemGroup>
<MessageCompile Include="a.mc">
<GenerateBaselineResource>true</GenerateBaselineResource>
<BaselineResourcePath>c:\test\</BaselineResourcePath>
</MessageCompile>
</ItemGroup>
O exemplo a seguir mostra a invocação de linha de comando:
mc.exe –s "c:\test\" a.mc
No exemplo acima, o MSBuild invoca mc.exe no arquivo a.mc, com a opção –s porque os metadados GenerateBaselineResource são definidos como true. Além disso, o MSBuild usa os metadados BaselineResourcePath para especificar o argumento para a opção –s.
Parâmetro da tarefa MessageCompiler | Metadados de item | Comutador de Ferramentas |
---|---|---|
Fontes
Parâmetro de cadeia de caracteres opcional. Especifica o nome do arquivo de manifesto a ser compilado. Especifica o nome de um arquivo de mensagem a ser compilado. |
@(MessageCompile) | <filename.man> <filename.mc> |
ANSIInputFile
Especifica que o arquivo de entrada é ANSI (padrão). |
%(MessageCompile.ANSIInputFile) | -a |
ANSIMessageInBinFile
Especifica que as mensagens no . O arquivo BIN deve ser ANSI. |
%(MessageCompile.ANSIMessageInBinFile) | -A |
EnableDebugOutputPath
Se isso for definido como true, ele habilitará a opção –x. |
%(MessageCompile.EnableDebugOutputPath) | |
DebugOutputPath
Especifica a pasta na qual o compilador coloca o arquivo de inclusão .dbg C. O arquivo .dbg mapeia as IDs de mensagem para seus nomes simbólicos. |
%(MessageCompile.DebugOutputPath) | Caminho -x<> |
EnableCallOutMacro
Adiciona macro de texto explicativo para invocar o código do usuário durante o registro em log. Essa opção não é válida para C# e é ignorada. |
%(MessageCompile.EnableCallOutMacro) | -Co |
EventmanPath
Especifica o caminho para o arquivo eventman.xsd. |
%(MessageCompile.EventmanPath) | Arquivo -w<> |
GenerateBaselineResource
Se isso for definido como true, ele habilitará a opção -s. |
%(MessageCompile.GenerateBaselineResource) | |
BaselineResourcePath
Gera um recurso binário por provedor. Gera MCGenResource.BIN de recursos globais de resumo. |
%(MessageCompile.BaselineResourcePath) | -s<path> |
GenerateC#LoggingClass
Gera a classe de registro em log C# (gerenciada) com base na classe Eventing FX3.5. |
%(MessageCompile.GenerateC#LoggingClass) | Namespace>-cs< |
GenerateC#StaticLoggingClass
Gera a classe de log C# estática (gerenciada) com base na classe Eventing FX3.5. |
%(MessageCompile.GenerateC#StaticLoggingClass) | Namespace>-css< |
GeneratedFilesBaseName
Especifica o nome base dos arquivos gerados. O padrão é o nome base do arquivo de entrada. |
%(MessageCompile.GeneratedFilesBaseName) | -z<basename> |
GeneratedHeaderPath
Se isso for definido como true, ele habilitará o comutador -h. |
%(MessageCompile.GeneratedHeaderPath) | |
HeaderFilePath
Especifica o caminho de onde criar o arquivo de inclusão C. O padrão é .. |
%(MessageCompile.HeaderFilePath) | Caminho -h<> |
GeneratedRcAndMessagesPath
Se isso for definido como true, ele habilitará a opção -r. |
%(MessageCompile.GeneratedRcAndMessagesPath) | |
RCFilePath
Especifica o caminho do RC inclui o arquivo e os arquivos de recurso de mensagem binária que ele inclui. O padrão é .. |
%(MessageCompile.RCFilePath) | Caminho -r<> |
GenerateKernelModeLoggingMacros
Gera macros de log do Modo Kernel. |
%(MessageCompile.GenerateKernelModeLoggingMacros) | -km |
GenerateMOFFile
Gera suporte de nível inferior para todas as funções e macros geradas. O arquivo MOF é gerado a partir do manifesto. O arquivo MOF é colocado no local especificado pela opção "-h". |
%(MessageCompile.GenerateMOFFile) | -Mof |
GenerateOLE2Header
Gera o arquivo de cabeçalho OLE2. Usa a definição HRESULT em vez da definição de código status. |
%(MessageCompile.GenerateOLE2Header) | -o |
GenerateUserModeLoggingMacros
Gera macros de log do Modo de Usuário. |
%(MessageCompile.GenerateUserModeLoggingMacros) | -um |
HeaderExtension
Especifica a extensão para o arquivo de cabeçalho (1 a 3 caracteres). |
%(MessageCompile.HeaderExtension) | Extensão> -e< |
MaximumMessageLength
Gera um aviso se o tamanho de qualquer mensagem exceder os caracteres <de comprimento> . |
%(MessageCompile.MaximumMessageLength) | -m<length> |
PrefixMacroName
Define o prefixo de nome da macro que é aplicado a cada macro de log gerada. O padrão é "EventWrite". |
%(MessageCompile PrefixMacroName) | Prefixo> -p< |
RemoveCharsFromSymbolName
Define o texto no início de cada nome de símbolo de evento a ser removido antes de formar os nomes de macro. O padrão é NULO. |
%(RemoveCharsFromSymbolName) | Prefixo>-P< |
SetCustomerbit
Define o bit Cliente em todas as IDs de mensagem. |
%(MessageCompile.SetCustomerbit) | -c |
TerminateMessageWithNull
Encerra todas as cadeias de caracteres com caracteres nulos nas tabelas de mensagens. |
%(MessageCompile.TerminateMessageWithNull) | -n |
UnicodeInputFile
O arquivo de entrada é Unicode. |
%(MessageCompile.UnicodeInputFile) | -u |
UnicodeMessageInBinFile
Mensagens em . O arquivo BIN deve ser Unicode (padrão). |
%(MessageCompile.UnicodeMessageInBinFile) | -U |
UseBaseNameOfInput
Especifica que o . O nome do arquivo BIN deve ter o nome de arquivo .mc incluído para exclusividade. |
%(MessageCompile. UseBaseNameOfInput) | -b |
UseDecimalValues
Especifica os valores FACILTY e SEVERITY no arquivo de cabeçalho em decimal. Define valores de mensagem no cabeçalho como decimal inicialmente. |
%(MessageCompile.UseDecimalValues) | -d |
ValidarAgainstBaselineResource
Se isso for definido como true, ele gerará a opção -t. |
%(MessageCompile.ValidateAgainstBaselineResource) | |
BaselinePath
Valida em relação ao recurso de linha de base. |
%(MessageCompile.BaselinePath) | Caminho -t<> |
Verbose
Especifica saída detalhada. |
%(MessageCompile.Verbose) | -v |
WinmetaPath
Especifica o caminho para o arquivo winmeta.xml. |
%(MessageCompile.WinmetaPath) | Arquivo -W<> |