¿Qué es el tiempo de ejecución de Windows? ¿Es una herramienta de desarrollo?
Windows Runtime, o WinRT, es una arquitectura de aplicación multiplataforma en Windows 8. Los lenguajes de desarrollo admitidos por WinRT incluyen C++ (generalmente incluye C++/CX) y lenguajes administrados C# y VB, así como JavaScript. Las aplicaciones WinRT admiten de forma nativa tanto la arquitectura x86 como la arquitectura ARM. Para mayor seguridad y estabilidad, las aplicaciones WinRT también admiten la ejecución en un entorno sandbox. [1-2]
Debido a su dependencia de algunos componentes COM mejorados, WinRT es esencialmente una API basada en COM. Debido a su base de estilo COM, WinRT puede implementar fácilmente interacciones entre códigos de varios idiomas como COM, pero es esencialmente una API local no administrada. La definición de la API se almacena en un archivo de metadatos con el sufijo ".winmd". La codificación del formato sigue la definición de ECMA 335, que es la misma que el formato de archivo utilizado por .Net, pero con ligeras mejoras. [1] El uso de un formato de metadatos unificado puede reducir significativamente la sobrecarga cuando WinRT llama a programas .NET y tiene una sintaxis más simple que P/Invoke. El nuevo lenguaje C++/CX (Extensión de componentes) toma prestada cierta sintaxis de C++/CLI para permitir la autorización y el uso de componentes WinRT, pero en comparación con la programación COM tradicional en C++, hay menos visibilidad del pegamento para los programadores y hay menos restricciones para los tipos mixtos. que C++/CLI. Con la ayuda de una nueva biblioteca de clases de plantilla llamada Windows Runtime C++ Template Library (WRL) (al igual que ATL para COM), el código C++ estandarizado (siguiendo la especificación COM) también se puede utilizar en los componentes del programa WinRT[2]. Sin embargo, MSDN recomienda utilizar C++/CX en lugar de WRL. [3]