首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在Windows8中可以使用Win32_Processor和Win32_NetworkAdapterConfiguration的WMI方法吗?

在Windows8中可以使用Win32_Processor和Win32_NetworkAdapterConfiguration的WMI方法吗?
EN

Stack Overflow用户
提问于 2012-03-20 20:11:14
回答 3查看 2.5K关注 0票数 7

我在Windows8消费者预览版中测试了一个现有的应用程序,它在启动时崩溃了。日志文件表明,我使用的方法是对CPU ID和网卡详细信息进行一些验证。

为了做到这一点,我调用

代码语言:javascript
复制
        ManagementClass mc = new ManagementClass("Win32_Processor");
        ManagementObjectCollection moc = mc.GetInstances();
        foreach (ManagementObject mo in moc)
        {
            if (cpuInfo.Length == 0)
            {
                // only return cpuInfo from first CPU
                cpuInfo = mo.Properties["ProcessorId"].Value.ToString();
            }
        }

(请注意,此应用程序在Windows 7及更早版本上运行良好)。

然后,我使用相同的语法连接到Win32_NetworkAdapterConfiguration并获取IPEnabled、IPAddress[]和MACAddress属性。

但在这里的某个地方,它正在崩溃。

我已经试着研究过了,发现下面的Windows 8 server list of WMI classes and methods和我正在使用的都不在上面。然而,同一个站点也有一个Windows 7 WMI classes and methods列表,而且它们也不在其中!(即使它可以在Windows7上运行,也没有问题)。

所以从外观上看,它是不受支持的。

ManagementClass的MSDN指示方法is still present in .NET 4.5。此外,this Microsoft resource确实显式地列出了Win32_Processor和Win32_NetworkAdapterConfiguration,其中包含我需要的方法。

所以,从链接中,你可以看到我已经尝试过研究这个问题,所以这是我试图解开这个谜团的最后一站。

我的应用程序最初是在Visual Studio2005中创建的.NET 2.0解决方案。我已经在我的Windows 8 Consumer Preview VM中安装了Visual Studio 2011 Beta,以及最新的SQL 2012 Express。我尝试将我的项目导入到这个Visual Studio中,但它没有加载它,告诉我它只支持Metro开发。因此,我不能在机器上调试这个问题。

所以我的问题是这些类是否存在于Windows8中?如果他们这样做了,那么我做错了什么?如果他们没有,那么我需要找到一种方法来仍然获得这些信息-但我想这是一个单独的问题;-)

EN

Stack Overflow用户

发布于 2017-03-30 05:37:36

WMI方法在Windows 8中可用,但在Windows 8.1中被删除,因此,您也可以使用此代码来分析Windows 8.1和Windows Phone 8上的各种网络指标:

https://code.msdn.microsoft.com/windowsapps/network-information-sample-63aaa201

票数 0
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9786485

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档