WMI 远程连接问题解决方法

原文: http://dragon0704.spaces.live.com/blog/cns!732dddd1803acb26!342.entry
 
由于需要用取得远程计算机的信息,采用了WMI的方法来解决,但在应用时遇到了一些连接问题。程序时候是用C#来写的。
目标机和客户机都是运行的XP系统
连接部分的代码如下:
                       ConnectionOptions option = new ConnectionOptions();
                       option.Username = "administrator";
                       option.Password = "password";
         ManagementScope Mscope = new ManagementScope(" \\\\221.38.15.199\\root\\cimv2", option);
但在连接时会出现拒绝访问的错误 HRUSRLT:0x0x80070005 (E_ACCESSEDDENIED)
在网上搜索了很久都没有找到通用的解决方法,经过多方搜集,终于解决了此问题。现把查找的方法整理如下:
1。如果是在网络上取得其远程计算机的信息,首先确保使用的用户名和密码正确,且用户有管理员权限。用户的密码不能为空。
2。检查目标机上DCOM是否可用。 检查注册表中键值 HKLM\Software\Microsoft\OLE\EnableDCOM的键值设为Y
3。检查WMI是否已经安装。 在运行窗口中输入 wbemtest
4。确保WMI的权限设置正确。可能需要设置的有DCOM的访问权限。设置方法可以参考MSDN中设置方法,地址如下:
      http://msdn2.microsoft.com/en-us/library/aa389290.aspx
      http://msdn2.microsoft.com/en-us/library/aa389286.aspx
      http://msdn2.microsoft.com/en-us/library/aa826699.aspx
      http://msdn2.microsoft.com/en-us/library/aa822575.aspx(其中有包括对Windows防火墙的设置,端口开放等设置,根据系统的具体情况而定。)
5。 如果访问的目标机运行的是Windows XP Pro 系统,需要确保远程登录方式不是来宾帐户的方式。
       方法如下:
           在本地安全设置中(可以在控制面板的管理工具中找到,或在运行框中输入命令 secpol.msc)。
           打开本地策略-〉安全选项,把 网络访问:本地帐户的共享和安全模式 中设置为 经典-本地帐户以自己的身份验证
6。 在XP SP2 中确保防火墙允许远程的登录。命令:netsh firewall set service RemoteAdmin
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 远程连接问题解决方法)