【发布时间】:2012-02-20 06:14:46
【问题描述】:
互联网上有很多博客说winrt 是win32 api 的替代品。这是真的吗?即使我读到为 Metro Application 开发的应用程序也使用 winrt。所以我理解正确吗,那些必须通过winrt的metro应用程序和经典应用程序必须通过win32 api的应用程序。请有人验证我的结论。
【问题讨论】:
互联网上有很多博客说winrt 是win32 api 的替代品。这是真的吗?即使我读到为 Metro Application 开发的应用程序也使用 winrt。所以我理解正确吗,那些必须通过winrt的metro应用程序和经典应用程序必须通过win32 api的应用程序。请有人验证我的结论。
【问题讨论】:
免责声明:我没有以任何方式参与 Windows 8 的设计或实施,我只关注 Windows 8 的新闻。我拥有没有特权信息。
winrt 是 win32 api 的替代品
微软已经明确表示 WinRT 不是 Win32 的替代品,而是另一种开发应用程序的方式。也就是说,ARM 上没有 Win32 实现(至少第三方开发人员可以访问)。正如 Steve Sinofsky 解释的那样,ARM 上的 Windows 将仅支持 WinRT,而不支持 Win32here。
metro 应用程序必须通过 winrt 和经典应用程序必须通过 win32 api 的应用程序
完全正确。
【讨论】:
Win32 仍然存在。 WinRt 包装它们并将它们的类型转换为使用语言的本机类型。 C++ Metro 应用程序仍然可以访问有限的 Win32 API 集
【讨论】:
WinRT 基本上是 Win32 (COM) 的包装器,供 Metro Stype 应用程序(Projections for Native、CLR、Javascript)使用,这些应用程序是为沙盒环境设计的,主要用于触摸屏感知应用程序(尽管可以破解它们以在桌面上工作)。 Metro Style 应用程序的一些 API 仍在使用经典的 COM API(例如 DirectX)。 那么,WinRT 建立在 Win32 之上,如何替代它呢? ;-)
【讨论】: