Winmdexp.exe (Ferramenta de Exportação de Metadados Windows Runtime)
A Ferramenta de Exportação de Metadados Windows Runtime (Winmdexp.exe) transforma um módulo de .NET Framework num ficheiro que contém metadados Windows Runtime. Embora .NET Framework assemblagens e Windows Runtime ficheiros de metadados utilizem o mesmo formato físico, existem diferenças no conteúdo das tabelas de metadados, o que significa que .NET Framework assemblagens não são automaticamente utilizáveis como componentes Windows Runtime. O processo de transformação de um módulo .NET Framework num componente Windows Runtime é referido como exportação. No .NET Framework 4.5 e 4.5.1, o ficheiro de metadados do Windows resultante (.winmd) contém metadados e implementação.
Quando utiliza o modelo componente do Windows Runtime, que está localizado em Loja Windows para C# e Visual Basic no Visual Studio 2013 ou Visual Studio 2012, o destino do compilador é um ficheiro .winmdobj e um passo de compilação subsequente chama Winmdexp.exe para exportar o ficheiro .winmdobj para um ficheiro .winmd. Esta é a forma recomendada de criar um componente Windows Runtime. Utilize Winmdexp.exe diretamente quando quiser ter mais controlo sobre o processo de compilação do que o Visual Studio fornece.
Esta ferramenta é instalada automaticamente com o Visual Studio. Para executar a ferramenta, utilize a Linha de Comandos para Programadores do Visual Studio ou o PowerShell para Programadores do Visual Studio.
Na linha de comandos, escreva o seguinte:
Sintaxe
winmdexp [options] winmdmodule
Parâmetros
Argumento ou opção | Description |
---|---|
winmdmodule |
Especifica o módulo (.winmdobj) a exportar. Só é permitido um módulo. Para criar este módulo, utilize a opção /target compilador com o winmdobj destino. Veja -target:winmdobj (C# Opções do Compilador) ou -target (Visual Basic). |
/docfile: docfile /d: docfile |
Especifica o ficheiro de documentação XML de saída que Winmdexp.exe produzirá. No .NET Framework 4.5, o ficheiro de saída é essencialmente o mesmo que o ficheiro de documentação XML de entrada. |
/moduledoc: docfile /md: docfile |
Especifica o nome do ficheiro de documentação XML que o compilador produziu com winmdmodule . |
/modulepdb: symbolfile /mp: symbolfile |
Especifica o nome do ficheiro de base de dados do programa (PDB) que contém símbolos para winmdmodule . |
/nowarn: warning |
Suprime o número de aviso especificado. Para aviso, forneça apenas a parte numérica do código de erro, sem zeros à esquerda. |
/out: file /o: file |
Especifica o nome do ficheiro de metadados do Windows de saída (.winmd). |
/pdb: symbolfile /p: symbolfile |
Especifica o nome do ficheiro de base de dados do programa de saída (PDB) que irá conter os símbolos do ficheiro de metadados do Windows exportado (.winmd). |
/reference: winmd /r: winmd |
Especifica um ficheiro de metadados (.winmd ou assemblagem) a referenciar durante a exportação. Se utilizar as assemblagens de referência em "\Programas (x86)\Assemblagens de Referência\Microsoft\Framework\. NETCore\v4.5" ("\Programas\..." em computadores de 32 bits), inclua referências para System.Runtime.dll e mscorlib.dll. |
/utf8output |
Especifica que as mensagens de saída devem estar na codificação UTF-8. |
/warnaserror+ |
Especifica que todos os avisos devem ser tratados como erros. |
@ responsefile |
Especifica um ficheiro de resposta (.rsp) que contém opções (e opcionalmente winmdmodule ). Cada linha em responsefile deve conter um único argumento ou opção. |
Observações
Winmdexp.exe não foi concebido para converter uma assemblagem de .NET Framework arbitrária num ficheiro .winmd. Requer um módulo compilado com a opção /target:winmdobj
e aplicam-se restrições adicionais. A mais importante destas restrições é que todos os tipos expostos na superfície da API da assemblagem têm de ser Windows Runtime tipos. Para obter mais informações, veja a secção "Declarar tipos no Windows Runtime Componentes" do artigo Criar Componentes Windows Runtime em C# e Visual Basic.
Quando escreve uma aplicação da Loja Windows 8.x ou um componente de Windows Runtime com C# ou Visual Basic, o .NET Framework fornece suporte para tornar a programação com o Windows Runtime mais natural. Isto é abordado no artigo .NET Framework Suporte para Aplicações e Windows Runtime da Loja Windows. No processo, alguns tipos de Windows Runtime utilizados frequentemente são mapeados para tipos de .NET Framework. Winmdexp.exe inverte este processo e produz uma superfície de API que utiliza os tipos de Windows Runtime correspondentes. Por exemplo, os tipos que são construídos a IList<T> partir do mapa de interface para os tipos que são construídos a partir da interface de Windows RuntimeIVector<T>.
Ver também
Comentários
https://aka.ms/ContentUserFeedback.
Brevemente: Ao longo de 2024, vamos descontinuar progressivamente o GitHub Issues como mecanismo de feedback para conteúdos e substituí-lo por um novo sistema de feedback. Para obter mais informações, veja:Submeter e ver comentários