在.NET Compact Framework中查找CPU类型

时间:2009-09-24 15:25:18

标签: compact-framework cpu

我需要能够从.NET Compact Framework应用程序中查找运行我的应用程序的CPU类型。基本上,我需要知道我是否使用ARM,SH4,x86等处理器。

1 个答案:

答案 0 :(得分:2)

您可以从GetSystemInfo API调用中获取此信息:

[DllImport("coredll")]
static extern void GetSystemInfo(ref SYSTEM_INFO pSI); 

public struct SYSTEM_INFO
{
    public uint dwOemId;
    public uint dwPageSize;
    public uint lpMinimumApplicationAddress;
    public uint lpMaximumApplicationAddress;
    public uint dwActiveProcessorMask;
    public uint dwNumberOfProcessors;
    public uint dwProcessorType;
    public uint dwAllocationGranularity;
    public uint dwProcessorLevel;
    public uint dwProcessorRevision;
}

在模拟器上运行,dwProcessorType返回2577,我记得是ARM处理器的ID,所以这将起作用(尽管你需要挖掘哪些值指的是哪些处理器)。

当然,您需要使用此指令才能使上述代码正常工作:

using System.Runtime.InteropServices;