Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Windows Runtime (WinRT) é uma arquitetura de aplicação neutra em termos de linguagem para construir APIs e componentes do Windows. Uma projeção de linguagem expõe APIs WinRT de acordo com as convenções de uma linguagem de programação específica, para que o seu código C# ou C++ possa chamá-las como outras APIs na sua linguagem.
Compreender como funcionam as projeções ajuda-o a decidir se deve consumir APIs WinRT na sua aplicação ou criar os seus próprios componentes WinRT reutilizáveis. Este artigo explica como uma projeção de linguagem mapeia metadados do WinRT para C# e C++, quais projeções a Microsoft suporta e quando precisa da documentação da projeção.
Como funcionam as projeções linguísticas
Os ficheiros de Metadados do Windows (.winmd) definem as APIs do WinRT. Uma projeção de linguagem lê esses metadados e expõe as APIs de acordo com as convenções de uma linguagem de programação específica. Quando cria um projeto a partir de um modelo padrão do SDK de Aplicações Windows ou WinUI, o modelo já configura a projeção da linguagem, e o seu código em C# ou C++ pode chamar diretamente APIs do WinRT sem trabalhar com os metadados subjacentes ou a interface binária da aplicação (ABI).
Projeções de linguagem suportadas
A Microsoft suporta projeções em linguagens C# e C++ para aplicações do SDK de Aplicações Windows e WinUI. Os projetos comunitários fornecem projeções para outras linguagens, como o Rust, mas a Microsoft não as suporta oficialmente.
| Projection | Linguagem | O que oferece |
|---|---|---|
| C++/WinRT | C++17 ou posterior | Uma projeção padrão de linguagem C++ para consumir e criar APIs e componentes WinRT. |
| C#/WinRT | C# (.NET) | Uma projeção de linguagem .NET para consumir APIs WinRT e criar componentes WinRT. |
Quando usar a documentação de projeção de linguagem
Para a maioria dos desenvolvimentos de aplicações, pode usar APIs WinRT projetadas como outras APIs na sua linguagem escolhida. Utilize a documentação sobre projeção quando:
- Crie um componente Windows Runtime que outras aplicações ou linguagens consomem.
- Distribuir uma biblioteca como um pacote NuGet que envolva APIs do WinRT.
- Trabalhe com interfaces COM ou ABI de baixo nível a partir de código C++.
-
Resolver erros de compilação relacionados com o código de interoperabilidade gerado ou com ficheiros
.winmd.
Conteúdo relacionado
Windows developer