问题标签 [wmi-query]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
windows - WMIprvse 进程在 2008 服务器 R2 上泄漏内存
我有一个在 VM 机器上运行的 Windows 2008 R2 服务器。我的 .NET 服务在此服务器上运行,定期查询 WMI,例如:
从 Win32_Service WHERE 中选择 ProcessId ...
一两天后,WMIprvse 占用了 500M 内存,并且 WMI 查询开始出现内存不足异常。
这篇文章似乎在谈论这个问题:“ http://support.microsoft.com/kb/958124 ”
我看到其他文章说微软已经意识到了这个问题,并且在下一个主要版本之前不会发布修复程序。 http://social.msdn.microsoft.com/Forums/en/netfxbcl/thread/256eb40c-d050-4278-a3d8-863e30db02a0
我将不胜感激有关此的任何建议和见解。
sql - get-wmiobject sql join in powershell - 尝试查找远程系统的物理内存与虚拟内存
get-wmiobject -query "从 Win32_LogicalMemoryConfiguration 中选择 TotalPhysicalMemory" -computer COMPUTERNAME >>output.csv
get-wmiobject -query "从 Win32_LogicalMemoryConfiguration 中选择 TotalPageFileSpace" -computer COMPUTERNAME >>output.csv
我正在尝试使用如下输出来完成此脚本:
windows - 如何使用 WMI 检索 Windows 计算机的 SID?
我不是在寻找用户 SID。我正在寻找计算机 SID,活动目录将使用它来唯一标识计算机。我也不想查询活动目录服务器,我想查询计算机本身。
iis - 连接到 IIS7 时出现 WMI 错误
我收到这里描述的相同错误:
http://forums.iis.net/p/1033115/1700749.aspx
我有一个 PowerShell cmdlet,它试图控制我们在 Windows Server 2008 SP2 和 IIS 7 上运行的 Web 应用程序。它尝试做的第一件事就是尝试使用 WMI 连接到远程计算机。它使用如下代码执行此操作:
this.Name 是服务器名称。此代码始终有效(不会引发异常),但在远程计算机上,我在 Windows 事件日志中收到此错误:
对 root\WebAdministration 命名空间的访问被拒绝,因为命名空间标有 RequiresEncryption,但脚本或应用程序尝试使用低于 Pkt_Privacy 的身份验证级别连接到此命名空间。将身份验证级别更改为 Pkt_Privacy 并再次运行脚本或应用程序。
但是随着 cmdlet 的继续,它会使用 this.iisScope 进行一些查询,并且它们都成功了,并且再也不会出现该错误。我对发生了什么有一个猜测,但我不确定如何证明它。我认为它试图在没有数据包隐私的情况下连接,失败,然后尝试使用数据包隐私。我试图用 Wireshark 嗅探数据包,但这并没有告诉我任何有用的信息。
usb - 使用 WMI 和 WMQ 从 SERVICE 类型 USBSTOR 的 Win32_PnPEntity 获取逻辑磁盘和分区信息
我正在检测我们的专有 USB 设备何时连接到 PC。当我们检测到这一点时,我们会得到相关的Win32_PnPEntity。我们希望将此Win32_PnPEntity用作以下信息的来源:
- USB 描述符 VID、PID、REV、固件版本。
- 逻辑磁盘驱动器卷和分区信息以获取驱动器号信息。
我遇到的问题是试图弄清楚如何使用 WMI 和 WMQ 从Win32_PnPEntity获取逻辑磁盘和分区信息。Win32_PnPEntity属于服务类型USBSTOR (我认为是USB 存储?)
以下是我目前经历的过程的描述:
我使用事件观察器监听Win32_USBControllerDevice以检测 USB 设备何时与 PC 连接或分离。我使用以下查询来限制事件发生的内容:
“SELECT * FROM
__InstanceOperationEvent WITHIN 1 WHERE TargetInstance ISA
'Win32_USBControllerDevice' AND
TargetInstance.__RELPATH LIKE '%DeviceId=%VID_1111%'”
当此事件发生时,我拉出“ Win32_USBControllerDevice.Dependent ”属性并拉出“ DeviceId ”值。然后,我将这个“ DeviceId ”值与Win32_PNPEntity类一起使用来获取关联的实例。
这就是事情对我来说变得棘手的地方......
我需要找到与Win32_PnPEntity实例相关的Win32_DiskDrive 。我需要这个实例来获取卷信息,这样我就可以获得每个分区分配的驱动器号。但我不知道如何到达它。
我经历了这个过程,因为Win32_PnPEntity提供了 VID、PID 以限制事件侦听和搜索……但它也提供了我需要的固件版本。所以从这一点开始,我想获得Win32_PnPEntity的Win32_DiskDrive。
任何输入将不胜感激。
--- 更好地描述问题的额外信息:
到目前为止我的工作步骤如下:
- 收听“
Win32_USBControllerDevice”的“__InstanceModificaitionEvent” - 从“__InstanceModificaitionEvent”的“TargetInstnace”获取“Win32_PnPEntity” - 从“Win32_PnPEntity”
获取“DeviceId” ' 其中包含PID、VID信息。
我现在遇到的问题是试图找到 'Win32_LogicalDisk' AND/OR 'Win32_DiskDrive' AND/OR 'Win32_DiskPartition' 或其他一些 ASSOCIATOR 或 REFERENCES 链接到已为“Mass Storge”实例分配的 USB 设备所连接的驱动器号.
下面的“图表”描述了我能想到这个问题的最佳方式:
我想要做的是弄清楚如何从 USB 设备的“Win32_PnPEntity”表示到“Win32_DiskDrive”表示。
以下是我在连接设备时运行的 powershell 脚本。它为我提供了属于 USB 设备的所有实例。我知道它们属于一个设备,因为我只连接了其中一个设备,并且通过我们对 USB 描述符的自定义编辑,我知道会发生什么。
PS C:\Users\USER.DOMAIN> gwmi Win32_PNPEntity |? { ($_.DeviceId -match 'VEN_MYCOMPANY&') -or ($_.DeviceId -match 'VID_XXXX')}
__GENUS : 2
__CLASS : Win32_PnPEntity
__SUPERCLASS : CIM_LogicalDevice
__DYNASTY : CIM_ManagedSystemElement
__RELPATH : Win32_PnPEntity.DeviceID="USB\VID_XXXX&PID_0001\YYYY"
__PROPERTY_COUNT : 24
__DERIVATION : {CIM_LogicalDevice, CIM_LogicalElement, CIM_ManagedSystemElement}
__SERVER : BYDEFAULT
__NAMESPACE : root\cimv2
__PATH : \BYDEFAULT\ root\cimv2:Win32_PnPEntity.DeviceID="USB\VID_XXXX&PID_0001\YYYY"
可用性:
标题:USB 大容量存储设备
ClassGuid : {36fc9e60-c465-11cf-8056-444553540000}
CompatibleID : {USB\Class_08&SubClass_06&Prot_50, USB\Class_08&SubClass_06, USB\Class_08}
ConfigManagerErrorCode
: 0
ConfigManagerUserConfig : False
CreationClassName : Win32_PnPEntity
Description _X USB Mass Storage Device
ErrorCleared :
ErrorDescription :
HardwareID : {USB\VID_XXXX&PID_0001&REV_0001, USB\VID_XXXX&PID_0001} 安装
日期 :
LastErrorCode :
制造商 : 兼容的 USB 存储设备
名称:USB 大容量存储设备
PNPDeviceID:USB\VID_XXXX&PID_0001\YYYY
PowerManagementCapabilities:
PowerManagementSupported:
服务:USBSTOR
状态:OK
StatusInfo:
SystemCreationClassName:Win32_ComputerSystem
SystemName:BYDEFAULT
__GENUS : 2
__CLASS : Win32_PnPEntity
__SUPERCLASS : CIM_LogicalDevice
__DYNASTY : CIM_ManagedSystemElement
__RELPATH : Win32_PnPEntity.DeviceID="WPDBUSENUMROOT\UMB\2&37C186B&0&STORAGE#VOLUME#_??_USBSTOR#DISK&VEN_MYCOMPANY&PROD_ZZZZ_-_STORAGE&REV_5678#YYYY&0#"
__PROPERTY_COUNT : 24
__DERIVATION : {CIM_LogicalDevice, CIM_LogicalElement, CIM_ManagedSystemElement }
__SERVER : BYDEFAULT
__NAMESPACE : root\cimv2
__path:\ bydefault \ root \ cimv2: win32_pnpentity.deviceid =“
wpdbusenumroot \
umb
\ umb \ umb \ 2&37c186b&0&storage#卷#dabf3de3f69a}
CompatibleID : {wpdbusenum\fs}
ConfigManagerErrorCode : 10
ConfigManagerUserConfig : False
CreationClassName : Win32_PnPEntity
Description : MYCOMPANY - Storage
DeviceID : WPDBUSENUMROOT\UMB\2&37C186B&0&STORAGE#VOLUME#_??_USBSTOR#DISK&VEN_MYCOMPANY&PROD_ZZZZ_-_STORAGE&REV_5678#YYYY&0#
错误清除:
ErrorDescription :
HardwareID :
InstallDate :
LastErrorCode :
Manufacturer : MYCOMPANY
Name : ZZZZ
PNPDeviceID : WPDBUSENUMROOT\UMB\2&37C186B&0&STORAGE#VOLUME#_??_USBSTOR#DISK&VEN_MYCOMPANY&PROD_ZZZZ_-_STORAGE&REV_5678#YYYY&0#
PowerManagementCapabilities :
PowerManagementSupported :
Service : WUDFRd
Status : Error
StatusInfo :
SystemCreationClassName : Win32_ComputerSystem
系统名称:默认
__GENUS : 2
__CLASS : Win32_PnPEntity
__SUPERCLASS : CIM_LogicalDevice
__DYNASTY : CIM_ManagedSystemElement
__RELPATH : Win32_PnPEntity.DeviceID="STORAGE\VOLUME\_??_USBSTOR#DISK&VEN_MYCOMPANY&PROD_ZZZZ_-_STORAGE&REV_5678#YYYY&0#{53F56307-B6BF-11D0-94F2-00A0C91EFB8B}"
__PROPERTY_COUNT : 24
__DERIVATION :{CIM_LogicalDevice,CIM_LogicalElement,CIM_ManagedSystemElement}
__SERVER:BYDEFAULT
__NAMESPACE:root\cimv2
__PATH : \BYDEFAULT\root\cimv2:Win32_PnPEntity.DeviceID="STORAGE\VOLUME\_??_USBSTOR#DISK&VEN_MYCOMPANY&PROD_ZZZZ_-_STORAGE&REV_5678#YYYY&0#{53F56307-B6BF-11D0-94F2-00A0C91EFB8B}"类
可用性
:{
标题:
71a27cdd-812a-11d0-bec7-08002be2092f}
CompatibleID:
ConfigManagerErrorCode:0
ConfigManagerUserConfig:False
CreationClassName:Win32_PnPEntity
描述:通用卷
DeviceID:STORAGE\VOLUME_??_USBSTOR#DISK&VEN_MYCOMPANY&PROD_ZZZZ_-_STORAGE&REV_50#{53F56307-B6BF-11D0-94F2-00A0C91EFB8B}
错误已清除:
错误描述:
HardwareID:{STORAGE\Volume}
InstallDate:
LastErrorCode:
制造商:Microsoft
名称:通用卷
PNPDeviceID:STORAGE\VOLUME_??_USBSTOR#DISK&VEN_MYCOMPANY&PROD_ZZZZ_-_STORAGE&REV_5678#YYYY&0#{53F56307-B6BF-11D0-94F2-0mentCapSupportedPowerCapabilities
:管理
EFB8B9 }
服务:volsnap
状态:OK
StatusInfo:
SystemCreationClassName:Win32_ComputerSystem
SystemName:BYDEFAULT
GENUS : 2
__CLASS : Win32_PnPEntity
__SUPERCLASS : CIM_LogicalDevice
__DYNASTY : CIM_ManagedSystemElement
__RELPATH : Win32_PnPEntity.DeviceID="USBSTOR\DISK&VEN_MYCOMPANY&PROD_ZZZZ_-_STORAGE&REV_5678\YYYY&0"
__PROPERTY_COUNT : 24
__DERIVATION : {CIM_LogicalDevice, CIM_LogicalElement, CIM_ManagedSystemElement}
__SERVER : BYDEFAULT
__NAMESPACE : root\cimv2
__PATH : \ BYDEFAULT\root\cimv2:Win32_PnPEntity.DeviceID="USBSTOR\DISK&VEN_MYCOMPANY&PROD_ZZZZ_-_STORAGE&REV_5678\YYYY&0"
可用性:
标题:MYCOMPANY ZZZZ - 存储 USB 设备
ClassGuid:{4d36e967-e325-11ce-bfc1-08002be10318}
CompatibleID:{USBSTOR\Disk, USBSTOR\RAW}
ConfigManagerErrorCode:0
ConfigManagerUserConfig:False
CreationClassName:Win32_PnPEntity
描述:磁盘驱动器
Device_ID:USBSTOR_MYCOMPANY&VEN -_STORAGE&REV_5678\YYYY&0
ErrorCleared :
ErrorDescription :
HardwareID : {USBSTOR\DiskMYCOMPANY___ZZZZ_-_Storage5678, USBSTOR\DiskMYCOMPANY___ZZZZ_-存储, USBSTOR\DiskMYCOMPANY , USBSTOR\MYCOMPANY___ZZZZ_-_Storage5...}
安装日期:
LastErrorCode:
制造商:(标准磁盘驱动器)
名称:MYCOMPANY ZZZZ - 存储 USB 设备
PNPDeviceID:USBSTOR\DISK&VEN_MYCOMPANY&PROD_ZZZZ_-_STORAGE&REV_5678\YYYY&0
PowerManagementCapabilities:
PowerManagementSupported:
服务:磁盘
状态:OK
StatusInfo:
SystemCreationClassName:Win32_ComputerSystem
SystemName:
上面的结果集显示了很多信息。
结果 1 -“服务类型”为“USBSTOR”。这是我在收听“__InstanceModificaitionEvent”时要使用的 Win32_PnPEntity,因为它为我提供了 VID 和 PID。
结果 2 - 是我不感兴趣的复合设备表示。
结果 3 - 'SERVICE TYPE' 是 'volsnap'。这是体积实体,我对此很感兴趣。
结果 4 -“服务类型”是“磁盘”。这是磁盘实体,我对此感兴趣。
如何获得“结果 1”和“结果 3”和/或“结果 4”之间的关系?
我曾尝试使用“Win32_PnPDevice”关联类,但它似乎并没有让我达到我需要的程度。我是这个 powershell WMI 和 WMQ 环境的新手,所以很可能我没有正确使用“Win32_PnPDevice”。
我运行以下查询来确定相关“Win32_PnPDevice”实体的“SameElement”和“SystemElement”属性上的内容:
gwmi Win32_PNPDevice |%{[wmi]
(
$ .SameElement)
} | 选择 {$ .Name, $.Description, $ .DeviceId, $_.Status}
gwmi Win32_PNPDevice |%{[wmi](
$ .SystemElement)
} | 选择 {$ .Name, $.Description, $ .DeviceId, $_.Status}
结果如下:
Win32_PNPDevice.SameElement - {PHYSICALDRIVE1, 磁盘驱动器, PHYSICALDRIVE1, OK} Win32_PNPDevice.SystemElement - {MYCOMPANY ZZZZ - 存储 USB 设备, 磁盘驱动器, USBSTOR_DISK&VEN_MYCOMPANY&PROD_ZZZZ_-_STORAGE&REV_5678_YYYY&0, OK}
Win32_PNPDevice.SameElement - {USB 海量存储设备,USB 海量存储设备,USB_VID_XXXX&PID_0001_YYYY,OK}
Win32_PNPDevice.SystemElement - {USB 海量存储设备,USB 海量存储设备,USB_VID_XXXX&PID_0001_YYYY,OK}
也许我错误地使用了“Win32_PnPDevice”类,但似乎我无法将“Win32_PnPEntity”连接到“Win32_DiskDrive”......
我希望这些额外的信息能更好地描述我的问题。
c# - 如何以编程方式将服务依赖项添加到已安装的 Window 服务?
如何以编程方式将服务依赖项添加到已安装的 Window 服务?
如果有人建议通过System.Management
namespace 使用 WMI 的解决方案,这将非常有帮助。我可以设置服务的依赖项的属性是什么?
java - Java 以特定用户身份访问 WMI
我正在尝试编写一个 Java 应用程序,它将查询域内 Windows 主机上的 WMI,以获取它们的 mac 地址和 dns 名称。我可以通过 exec 或使用我在互联网上找到的一些 jar 来运行脚本,但我所看到的没有一个允许我在运行查询时模拟 AD 帐户。
我希望能够指定查询运行的帐户(该域的管理员),该程序可能在不在域中的机器上运行,或者可能有两个我将查询的域。
我查看了 JACOB 和 com4J,但找不到它进行模拟的示例。
另外,我无论如何都不是高级程序员,如果我错过了一些显而易见的事情,我深表歉意
提前致谢。
c# - 使用 WMI 远程卸载应用程序
我正在尝试编写一个迷你 w32 可执行文件来使用 WMI 远程卸载应用程序。
我可以使用下面的代码列出所有已安装的应用程序,但我找不到通过 WMI 和 C# 远程卸载应用程序的方法
我知道我可以使用 msiexec 作为进程来做同样的事情,但如果可能的话,我希望使用 WMI 来解决这个问题......
谢谢, Cem
wmi - 通过 WMI 查找处理器使用情况
我正在尝试Win32_PerfRawData_PerfOS_Processor
在 Windows Server Enterprise 2007 上远程使用该类来查找 CPU 使用率。但我得到了巨大的 14-15 位数值,比如11745679223456 %。知道为什么它会给出错误的结果吗?它似乎在我的服务器 2008 上运行良好。有什么方法可以重新安装这些类吗?
PS:我的服务器2007上没有这个PerfFormattedData_Counters_ProcessorInfo
类。有什么办法可以在上面安装这个类吗?是否有任何其他类可以用来查找 CPU 使用率?
perl - WMI 查询系统中安装的修补程序列表?
我正在编写一个 perl 脚本,它将列出我系统中安装的修补程序,并在开始我的程序之前检查是否有任何必备的修补程序可用;
所以我需要能够枚举系统中的修补程序列表;这里提到了使用 wmic 生成 html 文件。是否可以通过 WMI 查询来做到这一点?