Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Nota:
La creación de componentes de Windows Runtime con C#/WinRT se admite en .NET 6 y versiones posteriores.
El paquete NuGet de C#/WinRT proporciona compatibilidad para crear sus propios tipos y componentes de Windows Runtime en C#, y consumirlos desde cualquier lenguaje compatible con Windows Runtime, como C++/WinRT o Rust. La compatibilidad con la creación y el hospedaje de C#/WinRT requiere .NET 6 y Visual Studio 2026, y está pensado para admitir escenarios de aplicaciones de escritorio, como Windows App SDK y WinUI3.
Para ver un tutorial que muestra cómo crear un componente de Windows Runtime con .NET 6 y cómo consumirlo desde una aplicación de consola de C++/WinRT, consulte Tutorial: Crear un componente de C#/WinRT y consumirlo desde C++/WinRT.
Para obtener más información y buscar o archivar cualquier problema, consulte el repositorio de Github de C#/WinRT y Creación de componentes de C#/WinRT.
Declaración de tipos en componentes de Windows Runtime
Al crear el componente de Windows Runtime, sigue las directrices y restricciones de tipos que se describen en la documentación de UWP existente sobre los componentes de Windows Runtime (consulta Componentes de Windows Runtime con C# y Visual Basic). El componente puede implementarse como cualquier otra biblioteca de C#. Sin embargo, hay restricciones en los tipos públicos del componente que se expondrán al Windows Runtime y se declararán en el .winmd generado para que otros puedan consumirlo.
Externamente, puedes exponer únicamente los tipos de Windows Runtime para parámetros y valores de retorno. Puede usar tipos predefinidos de C# como parte de la superficie pública del componente siempre que haya una asignación del tipo .NET a WinRT (consulte 'Asignaciones de tipo de .NET a tipos de WinRT en C#/WinRT'), los cuales aparecerán a los usuarios del componente como los tipos de tiempo de ejecución de Windows correspondientes. Los tipos de Windows Runtime de otros componentes de Windows Runtime y Windows SDK también se pueden usar como parte de la implementación pública del componente, como in parámetros, tipos de valor devuelto y herencia de clases.
Nota:
Hay algunos tipos de Windows Runtime que se asignan a tipos de .NET (vea Asignaciones de tipos de WinRT a .NET en C#/WinRT). Estos tipos de .NET se pueden usar en la interfaz pública del componente de Windows Runtime y aparecerán a los usuarios del componente como los tipos de Windows Runtime correspondientes.