ARM版本的Windows 8只能运行Metro(WinRT)风格的应用程序吗?
ARM版本的Windows 8只能运行Metro(WinRT)风格的应用程序吗?
参见:有没有办法编写一款能在Windows 7和Vista上运行的WinRT(Metro)应用程序?
我试图理解如何同时面向Windows 8 on Arm和Windows 7,考虑到Windows 7无法运行WinRT应用程序。而且,据我了解,应用程序只能从应用商店安装在Windows 8 Arm版本上。
那么,Windows 8 Arm能运行非WinRT应用程序吗?
从以上内容可以得出以下结论:
- 微软尚未公开表示Arm处理器是否支持桌面应用程序。他们展示了Microsoft Office的运行情况,但并没有说这是否会在最终平台上支持。
- 目前唯一的声明是关于Metro风格应用程序的支持,这些应用程序可以使用任何编程语言编写。
- 有一些迹象表明,在重新编译后,仍然可能支持桌面应用程序。
- 微软已经明确表示带有Win8的ARM设备具有桌面,并且可以运行桌面应用程序。
- BUILD大会没有提到这一点,并不意味着它是错误的。参见getwired.com/2011/09/20/...和channel9.msdn.com/posts/Windows-8-Running-on-ARM的链接,后者在大约2:30处展示了Win8 ARM上的桌面界面。
根据以上内容,我们可以回答问题:ARM版本的Windows 8是否只能运行Metro风格的应用程序?目前微软尚未明确表示Arm处理器是否支持桌面应用程序。虽然他们展示了Microsoft Office的运行情况,但并没有说这是否会在最终平台上支持。然而,有一些迹象表明,在重新编译后,仍然可能支持桌面应用程序。因此,目前的情况是,ARM设备上的Windows 8具有桌面界面,并且可以运行桌面应用程序,但尚不清楚是否会完全支持。
Windows 8的ARM版本只能运行Metro(WinRt)风格的应用程序吗?
出现这个问题的原因是,微软在其Building Windows 8博客中发布了一篇文章,明确表示Windows 8的ARM版本(WOA)不支持运行、模拟或移植现有的x86/64桌面应用程序。所有的应用程序都需要从应用商店中获取,并且必须遵守Metro风格应用程序的指导方针。除了Office等内置应用程序和控制面板、资源管理器、IE等应用外,其他所有应用都将是针对Windows Runtime编写的新的Metro风格应用。
该文章中并未明确说明第三方是否允许在ARM上创建“桌面”应用程序,并使用标记为“仅限桌面”的API,但不是“仅限Metro”的API。因此,原始问题仍然存在:是否有关于在ARM平板电脑的桌面区域上能否运行标记为“仅限桌面”的WinRT参考文档中的API的明确答案?有人知道吗?
需要重新阅读一下。文章中明确指出:“用户通过Windows商店、Microsoft Update或Windows Update获取所有软件,包括设备驱动程序。”所有软件都来自商店,而商店中没有桌面应用程序。
解决方法是,对于ARM版本的Windows 8,用户只能从应用商店中获取应用程序,而不能安装桌面应用程序。这意味着第三方开发者无法在ARM设备上运行现有的x86桌面应用程序,而只能开发新的Metro风格应用程序。
文章标题:Windows 8 ARM版本只能运行Metro风格应用吗?
问题的出现原因:有人认为Windows 8 ARM版本只能运行Metro风格的应用程序,而不能运行传统的桌面应用程序。
解决方法:根据微软的官方博客文章,需要完全重写传统的桌面应用程序,以适应新的WinRT API。微软试图阻止这种行为,但并没有说这是不可能的。然而,不论如何,谁会想要这样做呢?Windows 8在桌面上可能很难生存下去,更别说在ARM平台上了。
说“没有传统应用程序”并不等同于“没有桌面应用程序”。我所看到的一切都没有表明ARM上不会有常规的Win32、COM、IE、MSHTA等,以及一个资源管理器桌面。可能只需要在一些微调或“重新定位”之后重新编译C++或.Net。像HTAs这样的东西甚至可能几乎不需要任何努力就可以移植,只要它们不使用任何自定义的COM库。我对任何人曾期望任何x86代码在ARM上运行,甚至在某种WOW模拟下也感到惊讶。微软在这方面表达得相当清楚。
无论是否能够做到这一点(在ARM上运行桌面应用程序)是另一回事,即使你可以。基于ARM的设备可能会受到相当多的资源限制,这也是它们的目的所在:便宜和便携。
不。从微软的角度来看,这个目的是为了减少对AMD/Intel的依赖。否则,+1。
抱歉,但是这个回答现在是错误的。根据微软的博客文章,你不能简单地“重新编译”现有的桌面应用程序以适应新的WOA(Windows on ARM)平台。你需要完全重写它们以适应Metro,针对新的WinRT API。