2012-02-20 20 views
5

En Internet hay muchos blogs que dicen que winrt es un reemplazo de la API Win32. ¿ES esto realmente cierto? Incluso he leído que la aplicación desarrollada para Metro Application usa winrt. Entonces entiendo correctamente, aquellas aplicaciones que son aplicaciones de metro que tienen que pasar por winrt & aplicaciones clásicas tienen que pasar por api de win32. Por favor, alguien valide mis conclusiones.WinRT como reemplazo de Win32 API

Respuesta

10

Descargo de responsabilidad: No estoy involucrado de ninguna manera en el diseño o la implementación de Windows 8, y solo he estado al tanto de las noticias de Windows 8. Poseo no información privilegiada.

WinRT es un reemplazo de la API de Win32

Microsoft ha dejado claro que WinRT no es un sustituto para Win32, pero otra forma de desarrollar aplicaciones. Dicho esto, no hay implementación de Win32 en ARM (al menos, los desarrolladores de terceros pueden acceder). Windows on ARM solo será compatible con WinRT, y no con Win32, ya que Steve Sinofsky explica here.

aquellos solicitud y que sean de aplicación de metro que tiene que pasar por WinRT & aplicaciones clásicas tiene que ir a través de la API de Win32

absolutamente correcta.

+3

Tenga en cuenta que Metro admite un subconjunto bastante limitado de Win32 (http://msdn.microsoft.com/en-us/library/windows/apps/br205757.aspx), tanto en x86 como en ARM. –

+0

Siempre agregue un "Todavía no", porque esta es una simple decisión de comercialización para obtener y proteger las cuotas de mercado. – Lothar

+1

Algunas API de WinRT solo pueden ser llamadas por las aplicaciones de la tienda de Windows, mientras que otras solo pueden llamarlas las aplicaciones de escritorio. Aún otros pueden ser llamados por cualquiera de ellos. La documentación indica cuáles son compatibles en la sección de requisitos. –

3

WinRT es básicamente un envoltorio para Win32 (COM) para ser consumido por las aplicaciones Metro Stype (Proyecciones para Native, CLR, Javascript) que están diseñadas para un entorno de espacio aislado principalmente para aplicaciones sensibles a la pantalla táctil (aunque uno puede hackearlas para trabajar en el escritorio). Algunas API para aplicaciones de estilo Metro siguen utilizando las API COM clásicas (DirectX, por ejemplo). Entonces, ¿cómo puede WinRT reemplazar Win32 si está basado en él? ;-)

+4

Si piensas en winrt como relacionado con COM, estás ignorando la mayor parte del poder de winrt. Sí, en el fondo de las entrañas de Winrt, se usan construcciones COM. Pero los desarrolladores nunca deberían ver eso. En su lugar, utilizan las proyecciones de lenguaje que proporcionan una superficie de API natural y familiar: las API se sienten como las API a las que los desarrolladores que usan ese lenguaje están acostumbrados. –

+5

@LarryOsterman OMG Larry Osterman respondió a mi publicación * desmayos * – Jasper

5

Win32 todavía existe. WinRt los envuelve y convierte sus tipos para que sean nativos para el idioma de consumo. La aplicación metropolitana C++ aún puede acceder a un conjunto limitado de API de Win32