在几乎所有关于新 WinRT API 的文章中,我都提到了诸如“WinRT 是适用于 Windows 的新 API 并取代了旧的 Win32 API”之类的陈述。由于 WinRT 的目标是开发 Windows 应用商店应用程序,因此对我来说,这种说法似乎并不成立。
我无法想象有很多应用程序可以用 WinRT 完成(例如 Microsoft Office、Adobe 产品、3D 设计器程序甚至 Visual Studio)。这些应用程序仍然需要 Windows API(也称为 Win32)的功能。
那么为什么经常有人说 WinRT API 取代了 Windows API?
最佳答案
最近由于几个原因,这种情况有所改变,但以下是您希望在当前 Windows 应用程序开发(大约 2017 年)中使用 WinRT 而不是 Win32 的原因的简要说明:
- UWP 应用利用 WinRT
- 可以使用 Desktop Bridge 将 Win32 应用程序转换为 UWP 应用程序
- Windows 10 S requires all apps to go through the Windows Store
因此,使用 WinRT 将调用更少的时间来转换新的 Windows 10 S Store-only 应用程序范例的项目和代码。
关于 WinRT 与 Win32API 与 .NET 的比较,.NET 和 WinRT 都是部分使用 Win32 构建的; IIRC,他们使用它的子集。至少这是 2012 年 ArsTechnica 在 Peter Bright 的文章 "Turning to the past to power Windows’ future: An in-depth look at WinRT" 中传达的内容。 .这就是这个堆栈图的来源,或者至少它在那里使用:
关于windows - 为什么说 WinRT 取代了 Windows API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31273757/