我正在尝试做类似的事情:
Get-WmiObject Win32_NetworkAdapterConfiguration `
-Filter "DefaultIPGateway!=NULL"
但我有一个错误:
Get-WmiObject:无效查询在行:1 char:14 + Get-WmiObject <<<< Win32_NetworkAdapterConfiguration -Filter "DefaultIPGateway!=NULL" + CategoryInfo:InvalidOperation: (:) [Get-WmiObject],ManagementException + FullyQualifiedErrorId:GetWMIManagementException, Microsoft.PowerShell.Commands.GetWmiObjectCommand
这很奇怪,因为当我尝试获取 DefaultIPGateway 值的类型时。它是现有值的 System.Array:
PS> $result[0].DefaultIPGateway.Gettype()
IsPublic IsSerial Name BaseType
-------- -------- ---- --------
True True String[] System.Array
对于不存在的值,则为 NULL:
PS> $result[1].DefaultIPGateway.GetType()
You cannot call a method on a null-valued expression.
At line:1 char:36
+ $result[1].DefaultIPGateway.GetType <<<< ()
+ CategoryInfo : InvalidOperation: (GetType:String) [], RuntimeException
+ FullyQualifiedErrorId : InvokeMethodOnNull
有人可以帮我理解为什么我的 WQL 不起作用以及我应该怎么做才能让它运行吗?