Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Windows Runtime (WinRT) è un'architettura di applicazioni indipendente dal linguaggio per la creazione di API e componenti Windows. Una proiezione del linguaggio espone le API WinRT in base alle convenzioni di un linguaggio di programmazione specifico, in modo che il codice C# o C++ possa chiamarli come altre API nel linguaggio.
Comprendere il funzionamento delle proiezioni ti aiuta a decidere se usare le API WinRT nella tua app o creare i tuoi componenti WinRT riutilizzabili. Questo articolo illustra in che modo una proiezione del linguaggio esegue il mapping dei metadati WinRT a C# e C++, quali proiezioni Microsoft supporta e quando è necessaria la documentazione di proiezione.
Funzionamento delle proiezioni del linguaggio
Windows file di metadati (.winmd) definiscono le API WinRT. Una proiezione del linguaggio legge i metadati ed espone le API in base alle convenzioni di un linguaggio di programmazione specifico. Quando si crea un progetto da un modello standard SDK per app di Windows o WinUI, il modello configura già la proiezione del linguaggio e il codice C# o C++ può chiamare direttamente le API WinRT senza usare i metadati sottostanti o l'interfaccia ABI (Application Binary Interface).
Proiezioni linguistiche supportate
Microsoft supporta le proiezioni del linguaggio C# e C++ per le app SDK per app di Windows e WinUI. I progetti della community forniscono proiezioni per altri linguaggi, ad esempio Rust, ma Microsoft non li supporta ufficialmente.
| Projection | Language | Elementi forniti |
|---|---|---|
| C++/WinRT | C++17 o versione successiva | Proiezione di linguaggio C++ standard per l'utilizzo e la creazione di API e componenti WinRT. |
| C#/WinRT | C# (.NET) | Proiezione del linguaggio .NET per l'utilizzo delle API WinRT e la creazione di componenti WinRT. |
Quando usare la documentazione di proiezione del linguaggio
Per la maggior parte dello sviluppo di app, puoi usare API WinRT proiettate come altre API nel linguaggio scelto. Usa la documentazione sulla proiezione quando:
- Creare un componente Windows Runtime utilizzato da altre app o lingue.
- Distribuire una libreria come pacchetto NuGet che esegue il wrapping delle API WinRT.
- Usare interfacce COM o ABI di basso livello dal codice C++.
-
Risolvere gli errori di compilazione relativi al codice di interoperabilità generato o ai file
.winmd.