Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/293.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 检测WinRT和Windows 8之间的差异_C#_Windows 8_Windows Runtime - Fatal编程技术网

C# 检测WinRT和Windows 8之间的差异

C# 检测WinRT和Windows 8之间的差异,c#,windows-8,windows-runtime,C#,Windows 8,Windows Runtime,对于统计跟踪,我想知道应用程序是在Windows RT还是Windows Pro上运行 此线程表示无法获取系统版本信息: 有什么想法吗?检测处理器的体系结构——如果x86/x64不是RT,如果ARM是RT 使用这里的方法 但是不要点击计数,而是查找相关信息。您可以做的一件事是转到Visual Studio中的Configuration Manager,而不是默认的任何CPU配置-创建单独的ARM/x86/x64配置,并在项目属性/条件编译符号中定义一个不同于ARM与x86/x64的符号配置。然

对于统计跟踪,我想知道应用程序是在Windows RT还是Windows Pro上运行

此线程表示无法获取系统版本信息:


有什么想法吗?

检测处理器的体系结构——如果x86/x64不是RT,如果ARM是RT

使用这里的方法


但是不要点击计数,而是查找相关信息。

您可以做的一件事是转到Visual Studio中的Configuration Manager,而不是默认的任何CPU配置-创建单独的ARM/x86/x64配置,并在项目属性/条件编译符号中定义一个不同于ARM与x86/x64的符号配置。然后,您可以使用#if#else#endif预处理器指令在代码中测试它。

如果您想要实际的处理器信息,而不需要创建多个二进制文件,请查看我编写的这个帮助器类

然后你可以写:

var cpu = WindowsStoreSystemInfo.GetProcessorArchitecture();

我认为WinRT应用程序中没有可用的WMI类。并且GetEnvironmentVariable在环境类上不可用。。。WinRT有一组与普通.NET不同的类和方法!
System.Environment
是否在Metro应用程序中工作-编辑-看到上面更新的评论:)我想不是直接的,但是你可以使用这里使用的方法。仅链接的问题没有多大帮助。正在发布的helper类会很有帮助。在这里发布有点大,而且这样做会重新许可代码。未找到页面:(最好在这里发布一些代码。更新链接)。