首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

【100分】【WMI】【诡谲】换了一种方式就拒绝访问?

2011-12-20 
【100分】【WMI】【诡异】换了一种方式就拒绝访问?!首先说明一下啊,用第一种方式可以正常工作,所以应该不存在权

【100分】【WMI】【诡异】换了一种方式就拒绝访问?!
首先说明一下啊,用第一种方式可以正常工作,所以应该不存在权限问题吧
而且双方的计算机都没有开防火墙,所以希望大家不要瞎猜,要有理有据啊

C# code
void Button1Click(object sender, EventArgs e)        {            ManagementObjectSearcher mos=new ManagementObjectSearcher("select * from win32_logicaldisk");            mos.Scope.Options.Username="xpclient";            mos.Scope.Options.Password="MZD";            mos.Scope.Path.Server="192.168.1.15";                        //调用这个无惨的Get方法可以            foreach(ManagementObject mo in mos.Get())            {                MessageBox.Show(mo["name"].ToString());            }                                    //下面这种方法居然就拒绝访问了            ManagementOperationObserver moo=new ManagementOperationObserver();            moo.ObjectReady+= delegate(object ssender, ObjectReadyEventArgs se)            {                MessageBox.Show(se.NewObject["name"].ToString());            };                        //在Get方法这里抛出异常,拒绝访问,是异步调用的原因吗?            mos.Get(moo);                        //如果是本机计算机,两种方式都成功了        }


[解决办法]
使用ConnectionOptions来设置连接:
C# code
ConnectionOptions. connection_wmi = new ConnectionOptions();connection_wmi.Username = "";connection_wmi.Password = "";connection_wmi.Authority = "ntlmdomain:DOMAIN";
[解决办法]
打错了,纠正一下:
C# code
ConnectionOptions connection_wmi = new ConnectionOptions();connection_wmi.Username = "";connection_wmi.Password = "";connection_wmi.Authority = "ntlmdomain:DOMAIN";
[解决办法]
moo是否也应该有:
moo.Scope.Options.Username="xpclient";
moo.Scope.Options.Password="MZD";
moo.Scope.Path.Server="192.168.1.15";

另外:connection_wmi.Authority = "ntlmdomain:DOMAIN";
在NT系统下是需要的。
[解决办法]
探讨
不是你这个问题,你这样解决不了问题
connection_wmi.Authority = "ntlmdomain:DOMAIN";有没有这句是一样的
我知道你是在网上找的这句,这是以讹传讹,解决不了问题

[解决办法]
mark

热点排行