Articles of WMI

使用PowerShell获取设备驱动程序版本和关联的GUID?

现在,我得到两个单独的对象 一个Win32_NetworkAdapter WMI对象 一个Win32_PnpSignedDriver WMI对象 在我以前的脚本中,我已经确定我正在调用单独的对象,并通过GUID进行关联 $mydev = Get-WmiObject -class Win32_NetworkAdapter | Where-Object {$_.pnpdeviceid -like "*VEN_0000&DEV_00AA*"} If ($mydev.GUID -eq $relatedobj.ParentID) { action } 但是没有GUID / ParentID /等。 属性为Win32_PnpSignedDriver对象。 是否有另一种方式来获取有关设备的驱动程序(特别是驱动程序版本)的信息,并获得设备的GUID? 是否有可能赢得Win32_PnpSignedDriver,我只是没有看到它?

未在DfsrIdRecordInfo类中logging的值

根据MSDN( http://msdn.microsoft.com/en-us/library/windows/desktop/bb540013 (v=vs.85) .aspx )这些是DfsrIdRecordInfo的“flags”属性的唯一可能的值wmi类: 数据types:uint8访问types:只读 当前,权威和文件types标志的组合。 PRESENT_FLAG 0x1资源不是墓碑; 它可以在电脑上使用。 NAME_CONFLICT_FLAG 0x2逻辑删除是由于名称冲突而生成的。 这个标志只对墓碑有意义。 UID_VISIBLE_FLAG 0x4 IDlogging已经发送给其他合作伙伴; 因此,其他合作伙伴都知道这个资源。 JOURNAL_WRAP_FLAG 0x10卷已经有一个日志回卷,并且未检查资源以确定是否有日志回卷恢复过程发生任何更改。 PENDING_TOMBSTONE_FLAG 0x20 IDlogging正在被逻辑删除(或删除)。 当我检查一个文件时,它的flags属性值为“5”。 “5”的意思是什么? __GENUS : 2 __CLASS : DfsrIdRecordInfo __SUPERCLASS : __DYNASTY : DfsrIdRecordInfo __RELPATH : DfsrIdRecordInfo.Uid="{6A33C970-929A-4052-ACB5-92520F3B0E7C}-v3794" __PROPERTY_COUNT : 17 __DERIVATION : {} __SERVER : MYSERVER __NAMESPACE : root\microsoftdfs __PATH : \\MYSERVER\root\microsoftdfs:DfsrIdRecordInfo.Uid="{6A33C970-929A-4052-ACB5-92520F3B0E7C}-v3794" Attributes : […]

使用SMO WMI ManagedComputer枚举SQL Server实例的exception

我正在尝试在安装了SQL Server 2008 R2的Windows 7上使用PowerShell 2.0中的SMO WMI API /对象,以使用Managed Comuter对象获取本地计算机上的SQL Server实例列表。 但是,当我尝试访问对象上的任何数据时,我在实例化对象后收到exception。 我以pipe理员身份运行PowerShell。 $computer = New-Object Microsoft.SqlServer.Management.Smo.WMI.ManagedComputer ($env:computername) $computer.ServerInstances 结果在这个错误: 尝试枚举集合时抛出了以下exception:“尝试pipe理服务时SMO发生exception”。 在线:1个字符:89 +(New-Object Microsoft.SqlServer.Management.Smo.WMI.ManagedComputer($ env:computername))。 <<<< ServerInstances + CategoryInfo:NotSpecified:(:) [],ExtendedTypeSystemException + FullyQualifiedErrorId:ExceptionInGetEnumerator 有什么服务,我必须使这个工作? WMI服务正在运行。 有我需要的其他设置吗? 为什么我不能枚举SQL Server实例?

当通过Winrm查询WMI时,如何检索属性的数据types

Winrm允许我通过WS-MAN协议查询WMI而不是DCOM。 但是,在DCOM实现中,我可以检索我查询的各个类的各种属性的数据types。 但是,如果我使用winrm,我只需要返回值。 有什么办法来查询数据types? 例如c:> winrm enum wmicimv2 / * -dialect:wql -filter:“Select * FROM Win32_ComputerSystem” 会返回类似的东西 <wsman:Results xmlns:wsman="http://schemas.dmtf.org/wbem/wsman/1/wsman/results"> <p:Win32_ComputerSystem xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_ComputerSystem" xmlns:cim="http://schemas.dmtf.org/wbem/wscim/1/common" xsi:type="p:Win32_ComputerSystem_Type" xml:lang="en-US"> <p:AdminPasswordStatus>3</p:AdminPasswordStatus> <p:AutomaticManagedPagefile>true</p:AutomaticManagedPagefile> <p:AutomaticResetBootOption>true</p:AutomaticResetBootOption> <p:AutomaticResetCapability>true</p:AutomaticResetCapability> <p:BootOptionOnLimit xsi:nil="true"/><p:BootOptionOnWatchDog xsi:nil="true"/> <p:BootROMSupported>true</p:BootROMSupported> <p:BootupState>Normal boot</p:BootupState> ….. 但是,正如您所看到的那样,数据types不在那里。 我知道数据types,因为这是一个标准的Win32对象。 模式是在线的,我可以静态地找出来。 但是,可能有自定义的类。 DCOM WMI方法允许我查询属性并找出更多关于它们的细节,比如它们的数据types,以及它们是否是数组。 我可以通过winrm / wsman做同样的事情吗? 我知道这可以通过PowerShell来完成。 我正在寻找winrm / wsman方法,而不是powershell 谢谢

带有XCopy的WMIC:将文件从远程系统复制到共享位置

今天我发现一个问题,我想你的帮助…情况:我想复制我的远程文件(这是不是直接共享)到其他系统(这是共享),所以,基本上就像远程位置D驱动器文件复制到一些共享的位置 为此,我已经使用WMIC命令不工作。 然而直接XCOPY与正常的驱动器或文件夹传输它运作良好。 工作代码: C:\Users\bmshah>WMIC /NODE:"Server1" /USER:"domain\bmshah" /PASSWORD:"xxxxxxx" PROCESS CALL CREATE "XCOPY /Y \"D:\7.txt\" \"D:\11.txt*\"" 不工作代码: C:\Users\bmshah>WMIC /NODE:"Server1" /USER:"domain\bmshah" /PASSWORD:"xxxxxxx" PROCESS CALL CREATE "XCOPY /Y \"D:\7.txt\" \"\\Server2\SharedFolder\11.txt*\"" 如果你观察到,唯一的区别是最后的目的地部分。 我也尝试了以下选项:1)在开始和结束2使用\“的转义序列)授予该共享文件夹的全部权限到客人&所有&匿名login3)试图使用<>而不是双引号4)尝试与'单引号) 但没有什么作品在这里…任何想法将真正感激… 问候,Brijesh沙阿

保持WMI Performance Adapter始终运行的副作用或性能问题?

这与一个类似的问题有关: 为什么我的系统事件日志中充满了WMI Performance Adapter消息? 我发现了各种博客文章,build议您可以修改服务以便自动启动,从而防止事件日志填满。 这有什么风险吗? 是否有任何性能损失或任何其他副作用,以保持服务始终运行?

如何解决有关WebAdministrationProvider的安全警告?

我有一个新的Windows Server 2012安装,并刚刚安装了IIS。 我在应用程序日志中看到以下警告: 提供者WebAdministrationProvider已在Windows Management Instrumentation名称空间Root \ WebAdministration中注册,以使用LocalSystem帐户。 如果该帐户没有正确模拟用户请求,则该帐户有特权,并且提供程序可能会导致安全违规。 来源是“WMI”,事件ID是63。 根据此TechNet文章 ,我应该“获取不在LocalSystem安全上下文中运行的提供程序的版本”。 我几乎无法理解警告和文章。 这是什么意思? 如果我不能摆脱提供者,我可以禁用或取消注册吗?

WMI请求(Wbemtest),访问被拒绝给域计算机

让我先解释一下我们的设置! Cyber​​oam CR50ING防火墙有2个站点位置,2个子网间IPSec。 Cyber​​oam防火墙具有AD身份validation,并将其软件链接到设备,以检测实时和注销用户。 站点A正在工作#1。 网站B位于不同的域名下。 活用户正在工作。 我们将它们全部迁移到与站点A相同的域。它们共享相同的GPO,防火墙closures。 主要的问题是:从那以后,所有WMI对DC和域计算机的请求都是“访问被拒绝”0x80070005。 文件服务器正在工作(唯一的服务器获取WMI请求)。 我不能让活着的用户工作,因为它正在向DC发送WMI请求来获取事件查看器中的信息(安全选项卡,用于login/注销用户)。 我去了dcomcnfg,确保它安装得很好,但这仍然是一个问题。 任何想法是赞赏:) 谢谢 基督!

相同的WMI请求在其他机器上要慢得多

我前段时间发布了这个问题在stackoverflow ,但不幸的是,我还没有得到任何答案。 这实际上并不是很紧急,因为这个问题似乎只存在于我的机器上 – 现在。 但是我被告知,在使用WMI的时候,我们networking中的其他机器上也出现过类似的问题。 原来的问题: 所以我有这个方法,读取用户的配额: public ulong GetQuotaLimit(string username, string domain, char volume) { var scope = GetManagementScope(this, @"root\cimv2"); var path = new ManagementPath( string.Format( "Win32_DiskQuota.QuotaVolume='Win32_LogicalDisk.DeviceID=\"{0}:\"',User='Win32_Account.Domain=\"{1}\",Name=\"{2}\"'", volume, domain, username)); var diskQuotaObj = new ManagementObject(scope, path, null); var result = Convert.ToUInt64(diskQuotaObj.Properties["Limit"].Value); return result; } 它在我的同事的机器上运行良好(〜200ms),但由于某种原因,它不在我自己的机器上 – 从机器获得响应需要很长时间,维持用户的配额(〜2000ms)。 两台机器的规格几乎相同(相同的操作系统,相同的硬件),它们位于相同的networking和相同的域中。 所以我检查了这个请求的两台机器上的networkingstream量,发现了一件奇怪的事情:连接build立和authentication后,我的同事的机器直接继续实际的请求(从第491帧开始)。 机器是192.168.131.95 ,保持配额 192.168.131.175是我同事的机器 192.168.144.11是我的机器 […]

用WMIC调用DfsrConnectionInfo-> ForceReplication()时,方法参数无效

在我们的AD基础架构中,SYSVOL由DFSR复制。 我想通过WMIC使用WMI( ForceReplication方法 )强制复制: wmic /namespace:\\root\microsoftdfs path DfsrConnectionInfo call ForceReplication(15,10,2) 但是这失败了: Executing (DfsrConnectionInfo)->ForceReplication() ERROR: Description = Invalid method Parameter(s) 我再次检查了参数order / type: wmic /namespace:\\root\microsoftdfs path DfsrConnectionInfo call ForceReplication /? Call [ In/Out ]Params&type Status ==== ===================== ====== ForceReplication [IN ]Bandwidth(uint32) Implemented [IN ]DurationInMin(uint32) [IN ]Mode(uint32) [OUT]ReturnValue(uint32) Powershell中的相同调用工作: (gwmi -Namespace root\microsoftdfs -Class DfsrConnectionInfo).ForceReplication(2, 10, 15) 我在哪里与WMIC和论点错了?