标签: wmi-query

您如何查询WMI名称空间?

您如何查询WMI名称空间?

所以我知道WMI命名空间,因为我读到它们退出了,我知道我可以连接说:

root\cimv2
Run Code Online (Sandbox Code Playgroud)

我的问题是,如果我不知道那里有什么命名空间,我将如何查询可用的命名空间?

我只是想探索WMI而不必查找每个命名空间.

我正在使用WBEMtest,但我会接受任何东西,.NET,winapi.h,你有什么.

wmi wmi-query

7
推荐指数
2
解决办法
2万
查看次数

在放置或移除钥匙时获取USB唯一ID

我需要在放置/移除USB时获得唯一的USB ID(不是卷序列号).但在所有情况下,"PNPDeviceID"始终为空.我使用的代码是:

static void Main(string[] args)
{ 
    const string QUERY = @"select * from __InstanceOperationEvent within 1 where TargetInstance isa 'Win32_LogicalDisk' and (TargetInstance.DriveType=2)"; 
    Program p = new Program(); 
    ManagementEventWatcher w = new ManagementEventWatcher(new WqlEventQuery(QUERY));
    w.EventArrived += new EventArrivedEventHandler(p.OnWMIEvent); 
    w.Start();
    Console.ReadKey();
    w.Stop();
}

public void OnWMIEvent(object sender, EventArrivedEventArgs e)
{
    PropertyData p = e.NewEvent.Properties["TargetInstance"]; 
    if (p != null) 
    {
        ManagementBaseObject mbo = p.Value as ManagementBaseObject;
        PropertyData deviceid = mbo.Properties["DeviceID"]; 
        PropertyData drivetype = mbo.Properties["DriveType"];
        PropertyData driveSerial = mbo.Properties["VolumeSerialNumber"];
        PropertyData driveGUID = mbo.Properties["PNPDeviceID"]; …
Run Code Online (Sandbox Code Playgroud)

c# usb wmi wmi-query

7
推荐指数
1
解决办法
4709
查看次数

解释VBScript WMI query/impersonationLevel等

Dim strComputer, objReg, ScriptName, strKeyPath, strValueName, strValue
Const HKEY_LOCAL_MACHINE = &H80000002
strComputer = "."

Set objReg=GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & _
    strComputer & "\root\default:StdRegProv")
Run Code Online (Sandbox Code Playgroud)

这是一个较大的脚本,我正在尝试对工作进行逆向工程.原始编码器不可用.

我试图研究和理解最后一行代码,但我在网上找不到任何好的信息,而且我对vbs并不擅长.

据我所知: - objreg是一个SWbemObjectEx类型的对象. - winmgmts:{impersonationLevel = impersonate}让对象使用调用者的安全级别(在我的案例系统中) - StdRegProv应该指向HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WBEM\Scripting\Default Impersonation Level

我有点得到它应该做的但是我不知道它是如何玩的.

如果任何人都可以逐字逐句地解释它的作用,包括"!\"之类的东西,我会非常感激它.谢谢.

vbscript wmi wmi-query

7
推荐指数
1
解决办法
1万
查看次数

如何使用 WMI 查询获取多个 rras sstp 端口?

使用 PowerShell 我可以使用 cmdlet(Get-VpnServerIPsecConfiguration).SstpPorts 但是我们有严格的安全策略,所以我只需要获取带有Get-WmiObject -Query. 我试图用谷歌搜索,但找不到这个值的某个类。

请问你能帮帮我吗?

wmi wmi-query

7
推荐指数
0
解决办法
55
查看次数

WMIEvent类列表

最近我一直在学习WMI和WQL.我找到了我可以查询的Win32类列表(来自MSDN),但是我无法找到事件类列表(应该是Win32类列表的子集不是吗?)是否有任何一个为此有一份清单或某种备忘单?出于好奇,我很想问这个问题.

事件类的示例 - Win32_ProcessStartTrace

c# wmi wmi-query wql

6
推荐指数
2
解决办法
5493
查看次数

获取链接速度 - Win32_PerfRawData_Tcpip_NetworkInterface

我发现确定网络连接链接速度 ,现在我尝试将Win32_PerfRawData_Tcpip_NetworkInterface中的数据与 Win32_NetworkAdapter(或Win32_NetworkAdapterConfiguration)相关联.

在类上,Win32_PerfRawData_Tcpip_NetworkInterface我没有看到任何可用于引用的索引或唯一键 Win32_NetworkAdapterConfiguration或者Win32_NetworkAdapter. I tried to use the名称inWin32_PerfRawData_Tcpip_NetworkInterface andWin32_NetworkAdapter`,但它们看起来仍然不同.

例如

名称:英特尔(R)PRO/1000 PL网络连接

VS

名称:Intel [R] PRO_1000 PL网络连接

任何提示?

先感谢您,

Milde

===

也许这段代码会帮助你帮助我们:)

# I got the DeviceID of a NIC and use it to get the "NetConnection ID":

$objWMIService = Win32::OLE->GetObject("winmgmts:\\\\$computer\\root\\CIMV2") or die "Exit: WMI connection failed. \n";
$colNicSetts = $objWMIService->ExecQuery(
              "SELECT * FROM Win32_NetworkAdapter Where DeviceID = '$ID'", "WQL", wbemFlagReturnImmediately | wbemFlagForwardOnly);

foreach …
Run Code Online (Sandbox Code Playgroud)

windows perl wmi wmi-query

6
推荐指数
1
解决办法
4079
查看次数

使用PHP远程查询WMI

我当前的代码如下所示:

define ( 'CPU_NAME', 'remote_server' );
$obj = new COM ( 'winmgmts:{impersonationLevel=impersonate}//' . CPU_NAME . '/root/cimv2' );
if ( is_object ( $obj ) ){ 
     $process = $obj->execquery ( "SELECT * FROM Win32_Process" );
}
Run Code Online (Sandbox Code Playgroud)

我在哪里放置remote_server的登录凭据?我看到它需要一个用户名和密码,但我不知道如何实现它.

任何帮助,将不胜感激.

参考:http://us3.php.net/manual/en/class.com.php

php windows wmi wmi-query

6
推荐指数
1
解决办法
2万
查看次数

通过WMI更新

我需要一个使用WMI的更新查询示例.我搜索过但我找不到任何东西.

任何人都可以粘贴一些示例代码吗?

谢谢.

c# wmi wmi-query

6
推荐指数
1
解决办法
1151
查看次数

WMI查询 - CPU LoadPercentage

我正在寻找一种更好的方法来使用来自多个系统的WMI来获得CPU负载百分比(意味着不同的CPU等).我的代码正在运行,但我认为有一种更好的方法来克服所有CPU使用率百分比.

有任何想法吗?

先感谢您!

SelectQuery queryCpuUsage = new SelectQuery("SELECT * FROM Win32_Processor");
ManagementObjectSearcher cpuUsage = new ManagementObjectSearcher(scope, queryCpuUsage);                                       
ManagementObjectCollection cpuUsageCollection = cpuUsage.Get();                                                       

foreach (ManagementObject queryObj in cpuUsageCollection)
{                                           
iCPU++;
calcCPU = Convert.ToInt32(queryObj["LoadPercentage"]);
perCPU = perCPU + calcCPU;
}

perCPU = perCPU / iCPU;

cpuUsageCollection.Dispose();

Console.WriteLine("LoadPercentage CPU: {0}", perCPU);
Run Code Online (Sandbox Code Playgroud)

wmi wmi-query

6
推荐指数
1
解决办法
1万
查看次数

Win32_Product 的替代品?

Win32_Product尝试查询以找到软件版本后,我无法理解为什么结果如此之慢。比查询Win32_serviceWin32_process. 所以来到这里看看我是否遗漏了什么,我发现其他人报告了同样的问题,这篇文章解释了原因。

查找已安装软件的最常建议替代方法是查询一个或三个注册表项。这将是我的第一个解决方案,但我的公司尚未开始配置服务器以接受PSRemoting。任何 reg 查询只会返回 Kerberos 身份验证错误。我可以PSRemoting在单个服务器上启用,但我的团队支持 30K 系统。所以这个解决方案已经出来了。

最重要的是,我们正在将 Symantec Endpoint Protection 从 v. 11 升级到 v. 12,我想要一个简单的检查来查找服务器上安装的版本。除了Win32_Product注册表查询之外,还有其他方法可以找到版本吗?

windows powershell wmi-query

6
推荐指数
1
解决办法
9782
查看次数

标签 统计

wmi-query ×10

wmi ×9

c# ×3

windows ×3

perl ×1

php ×1

powershell ×1

usb ×1

vbscript ×1

wql ×1