我试图在Windows 8 MSFT_NetAdapter
中使用新的WMI类,而不是使用Win32_NetworkAdapter
。
using System;
using System.Management;
namespace TestAdapters
{
class Program
{
static void Main(string[] args)
{
string query = "SELECT * From MSFT_NetAdapter";
ManagementObjectSearcher searcher = new ManagementObjectSearcher(query);
ManagementObjectCollection adaptersCollection = searcher.Get();
foreach (ManagementObject adapterWmiObject in adaptersCollection) //System.Management.ManagementException
{
//...
}
Console.WriteLine("end.");
Console.ReadKey();
}
}
}
我在foreach
语句上得到一个带有message:无效类的foreach
我不知道,这是什么意思。我在Windows8.1 x64下编译和运行代码,所以这个类必须工作。
如何使用MSFT_NetAdapter
发布于 2014-03-10 13:32:54
该类不在root\Cimv2
命名空间中。
在root\StandardCimv2
命名空间中查找它。
请看下面的Powershell:
PS C:\Scripts> Get-WmiObject MSFT_NetAdapter
Get-WmiObject : Invalid class "MSFT_NetAdapter"
At line:1 char:1
+ Get-WmiObject MSFT_NetAdapter
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidType: (:) [Get-WmiObject], ManagementException
+ FullyQualifiedErrorId : GetWMIManagementException,Microsoft.PowerShell.Commands.GetWmiObjectCommand
PS C:\Scripts> Get-WmiObject MSFT_NetAdapter -Namespace root\StandardCimv2
SUCCESS
https://stackoverflow.com/questions/21236095
复制相似问题