C# 为x86构建的UWP应用程序是否会在x64上运行?

C# 为x86构建的UWP应用程序是否会在x64上运行?,c#,uwp,windows-store-apps,win-universal-app,C#,Uwp,Windows Store Apps,Win Universal App,我遇到了一个问题,并找到了一个仅为x86构建的建议。但我不确定,虽然x86可以在x64计算机上运行,但这是否意味着它也将作为UWP应用程序运行,并提供给x64客户端 结果不清楚。TL;DR:仅限x86的UWP应用程序将在Windows x64消费系统上运行,但不会在Xbox One或基于Windows ARM的旧设备上运行 一般来说,现代Windows x64桌面PC具有“Windows上的Windows”层,该层支持运行32位应用程序以及64位本机应用程序,以提高兼容性。也就是说,有64位版本

我遇到了一个问题,并找到了一个仅为x86构建的建议。但我不确定,虽然x86可以在x64计算机上运行,但这是否意味着它也将作为UWP应用程序运行,并提供给x64客户端


结果不清楚。

TL;DR:仅限x86的UWP应用程序将在Windows x64消费系统上运行,但不会在Xbox One或基于Windows ARM的旧设备上运行

一般来说,现代Windows x64桌面PC具有“Windows上的Windows”层,该层支持运行32位应用程序以及64位本机应用程序,以提高兼容性。也就是说,有64位版本的Windows不支持运行32位应用程序,如Windows Server(这是可选功能)或Xbox One(只能运行x64本机应用程序)。在这些情况下,只有x86的UWP包将无法运行

到目前为止,x86和ARM主要与Windows Mobile平台相关。有一些最近发布的设备进入市场,可以运行x86或ARM,但不能运行x64应用程序

x64适用于大多数Windows桌面PC和Xbox One。根据您的目标市场细分和应用程序类型,您可以选择仅限x64的体系结构包——这主要与高端游戏或高性能应用程序相关

理想情况下,您可以为所有受支持的体系结构(包括x86、x64本机和ARM)提供UWP应用程序,前提是您能够实际测试它们


请参阅,并且不会在上运行x86版本 1) windows rt/windows S 2) xbox。 3) 任何windows mobile变体

它将继续运行 1) 本机或WOW架构下的桌面windows。32位和64位版本。 2) 适用于ARM 64位操作系统的windows 10(通过WOW下的win32仿真层)。任何具有此操作系统的设备都可以工作。 3) 全息透镜(需要x86) 4) 物联网核心,取决于您的设备。 5) 曲面轮毂(无论是什么)


现在,您还可以编译arm64,它只在windows 10 for ARM上运行。

最大限度地扩大您的可寻址市场的最佳方法是将所有可能的软件包(当前为x86、x64和ARM32)提交给PeterTorr MSFT,直到MS有一个可能仅在x64上运行的错误,因此可能只通过运行x86来修复。至于ARM——它比Windows10手机更活跃吗?@PeterTorr-MSFT我最初的问题你有答案吗(这个答案并没有真正解决这个问题)?有ARM-Windows个人电脑;它不仅限于电话。是的,在x64 CPU上运行的x86 UWP仍然作为UWP运行,但正如@Chuck所说,并非所有x64系统都支持x86应用程序。@ispiro这听起来像是一个标准的C#问题。如果您的C#程序正在加载DLL,那么如果您使用
/platform:anycpu
构建,则x86和x64本机都必须支持DLL。如果你只使用x86版本的DLL,那么你必须使用<代码> /平台:x86 < /代码>。还考虑ARM与x86和x64,这样你就可以到达每一个设备,即移动(ARM),平板电脑(ARM或X64,x86),PC,HeloLoices等。