WMI 全称为:Microsoft Windows Management Instrumentation (WMI)
按微软的介绍大致如下:
WMI 是 Microsoft 主要的针对 Windows 的管理支持技术。在 WMI 之前,所有的 Windows 图形化管理工具都依赖于 Win32 应用程序编程接口(Application Programming Interfaces,APIs)来访问和管理 Windows 资源。在 WMI 之前,能够以编程方式访问 Windows 资源的惟一方法就是通过 Win32 API。这种情况使 Windows 系统管理员无法通过一种简便的方法利用常见的脚本语言来自动化常用的系统管理任务,因为大多数脚本语言都不能直接调用 Win32 API。通过提供一致的模型和框架,WMI 改变了这种情况 — 通过模型和框架,所有的 Windows 资源均被描述并公开给外界。最好的一点是,系统管理员可以使用 WMI 脚本库创建系统管理脚本,从而管理任何通过 WMI 公开的 Windows 资源!
通过WMI访问远程计算机需要注意几点:
1。首先确保使用的用户名和密码正确,且用户有管理员权限。用户的密码不能为空。
2。检查目标机上DCOM是否可用。 检查注册表中键值 HKLM\Software\Microsoft\OLE\EnableDCOM的键值设为Y
3。检查WMI是否已经安装。 在运行窗口中输入 wbemtest。wbemtest是一个wmi的测试工具,可以远程连接计算机。用法:\\<ip>\root\cimv2,连接。此连接等同于net use \\<ip>\C$ /u:<username> <password>命令。如果目标加入了域,则在域服务器不可用的情况下会报“当前没有可用的登录服务器处理请求”的错误,此时局域网共享也将失效。局域网访问通过NetBiOS或者一种直连的方式访问,所以确认端口135,139,或者445是否正常。
4。确保WMI的权限设置正确。需要设置的有DCOM的访问权限。运行DCOMCNFG。在“组件服务”对话框中,依次展开“组件服务”、“计算机”,“我的电脑”。在“我的电脑”右键属性对话框中,单击“COM 安全”选项卡。在“启动和激活权限”下,单击“编辑限制”。在“启动权限”对话框中,将你要访问的用户或组添加到“组或用户名称”列表中。在“启动权限”对话框中,在“组或用户名称”框内选择您的用户和组。在“用户权限”下的“允许”栏中,选择“远程启动”,然后单击“确定”。
5。 如果访问的目标机运行的是Windows XP Pro 系统,需要确保远程登录方式不是来宾帐户的方式。方法如下:在本地安全设置中(可以在控制面板的管理工具中找到,或在运行框中输入命令 secpol.msc)。打开本地策略-〉安全选项,把 网络访问:本地帐户的共享和安全模式 中设置为 经典-本地帐户以自己的身份验证。
6。 在XP SP2 中确保防火墙允许远程的登录。命令:netsh firewall set service RemoteAdmin enable(禁用为disable)。
7。 注意系统安装其他防火墙或杀毒软件的设置是否允许访问。
8。 确保WMI或相关服务正在运行。XP中可能涉及到的服务有:
COM+ Event System
Remote Access Auto Connection Manager
Remote Access Connetion Manager
Remote Procedure Call(RPC)
Remote Procedure Call(RPC)Locator
Remote Registry
Server
Windows Management Instrumentation
Windows Management Instrumentation Driver Extensions
WMI Performance Adapter
Workstation
分享到:
相关推荐
- 要进行WMI远程操作,首先需要在目标机器上开启WMI服务,并确保防火墙设置允许远程访问。 - 使用WMI进行远程操作通常涉及创建一个`SWbemLocator`对象,然后连接到远程计算机的命名空间,例如`\\RemoteComputer\...
### C#利用WMI远程关机 在IT领域中,Windows Management Instrumentation(WMI)是一种用于访问、配置、管理和监视Windows系统中的硬件和软件的标准技术。本文将详细介绍如何使用C#结合WMI实现远程关机功能。 ####...
### VC调用WMI访问远程主机查询结果错误的问题解决方法 #### 一、问题背景与概述 在使用Visual C++(VC)通过Windows Management Instrumentation (WMI)接口访问远程计算机资源时,可能会遇到返回结果始终为零的...
错误ID10通常表示WMI提供程序在尝试访问或处理WMI数据时遇到了问题。这可能是由于多种原因引起的,包括但不限于: 1. **注册表损坏**:WMI依赖于注册表来存储其配置信息。如果注册表项错误或损坏,可能会导致WMI...
Windows Management Instrumentation(WMI)是微软提供的一个管理系统资源的标准接口,允许应用程序访问和控制操作系统、硬件设备和服务等信息。C#作为.NET Framework的一部分,提供了丰富的库支持与WMI交互,使得...
在C#中,我们通常会使用System.Management命名空间来访问WMI接口。以下是一个简单的示例,展示如何查询远程计算机上的进程信息: ```csharp using System; using System.Management; public class Program { ...
3. **执行管理操作**:WMI提供了多种类和方法,如`Win32_Process`类可用于创建、终止或管理远程计算机上的进程,`Win32_Service`类则可用来启动、停止或改变服务状态。 4. **处理结果**:执行查询或操作后,你需要...
由于WMI访问涉及安全问题,你需要在Windows服务器上设置相应的权限。这通常包括创建一个具有适当权限的用户账户,并在Windows防火墙中开启必要的端口(默认为 wbem-http 5985 和 wbem-https 5986)。 访问Windows ...
8. **安全性与权限**:访问WMI可能需要相应的权限,特别是跨域或远程访问时。理解如何配置安全策略对于安全地使用WMI至关重要。 9. **事件订阅**:WMI支持事件订阅,允许应用程序在特定事件发生时接收通知,实现...
本文将深入探讨如何利用C#编程语言,通过WMI来获取远程服务器的CPU和内存使用率,以解决Win32_LogicalMemoryConfiguration类可能存在的问题。 首先,我们要了解WMI的工作原理。WMI是基于Common Information Model ...
管理员可以通过以下方法来解决WMI使用过程中可能遇到的问题: 1. 检查WMI配置:管理员可以检查WMI配置是否正确,例如检查WMI服务是否启动和正确配置。 2. 检查WMI访问权限:管理员可以检查WMI访问权限,例如检查...
此外,文件可能还包含了如何检查WMI服务是否启动以及如何解决WMI相关问题的提示。 总的来说,WMI是Windows系统管理和自动化的重要工具,它提供了丰富的接口供管理员和开发者使用,极大地提高了工作效率。通过理解并...
通过以上介绍和示例,我们可以看到使用Visual Basic编程访问WMI对象是一种强大且灵活的方法,可以帮助开发者和系统管理员更好地管理Windows系统。无论是获取系统信息还是执行管理任务,WMI都提供了丰富的API和工具。...
一旦建立了连接,我们就可以使用`SWbemLocator`对象的`connectServer`方法连接到本地或远程的WMI服务器。接着,你可以获取`SWbemServices`对象,它是执行WMI查询的接口。例如: ```java String wmiNamespace = ...
Windows Management Instrumentation(WMI)是Microsoft Windows操作系统中的一个核心组件,它提供了一种统一的方法来管理本地和远程系统的硬件、软件和服务。WMI允许应用程序通过标准接口访问和操作系统级别的信息...
通过WMI,开发者和系统管理员可以获取和修改系统配置,监控性能,执行远程操作,甚至创建自定义管理解决方案。 **WMI的用途** 1. **信息查询**:WMI可以用于查询操作系统、硬件、网络设备、服务、进程、用户账户等...
1. **WMI基础**:WMI是基于Common Information Model (CIM) 的,它提供了标准接口来访问和管理Windows系统的各种信息。WMI库包含了大量的类,这些类代表了系统对象,如进程、服务、硬件设备等。 2. **WMI查询**:...
3. **连接到WMI服务**:通过`IWbemLocator::ConnectServer`方法,我们可以指定目标计算机(本地或远程),命名空间(通常为`\\root\CIMV2`,这是默认的WMI进程信息存储的地方),以及认证信息。 4. **获取...
WMI(Windows Management Instrumentation)是微软Windows操作系统提供的一种管理和操作环境,允许应用程序通过标准接口访问和控制操作系统、硬件设备和服务等系统资源的信息。在Java环境中,若要进行WMI调用,通常...