WMI 远程访问注册表
try
{
ConnectionOptions options = new ConnectionOptions();
options.Username = "administrator";
options.Password = "zz";
string sub_key = @"SOFTWARE\Microsoft\Windows\CurrentVersion";
ManagementScope Conn = new ManagementScope(@"http://www.cnblogs.com/yinhaosln/admin/file://test001/root/default", options);
Conn.Connect();
ManagementPath path = new ManagementPath("StdRegProv");
ManagementClass processClass = new ManagementClass(Conn, path, null);
string value = "";
object[] method_args = { 0x80000002, sub_key, "CommonFilesDir", "" };
object result = processClass.InvokeMethod("GetStringValue", method_args);
//object[] method_args = { 0x80000002, sub_key, null };
//object result = processClass.InvokeMethod("EnumKey", method_args);
this.richTextBox1.Text = Convert.ToString(method_args[3]);
this.richTextBox1.AppendText("ok");
//string[] softs = (string[])method_args[2];
//foreach (string soft in softs)
//{
// if (soft.StartsWith("{") || soft.EndsWith("}"))
// {
// continue;
// }
// else
// {
// Regex r = new Regex("^KB[0-9]");
// Match m = r.Match(soft);
// if (m.Success)
// {
// continue;
// }
// }
// this.richTextBox1.AppendText(soft + "\r\n");
//}
}
//报错
catch (Exception ee)
{
this.richTextBox1.Text = ee.Message;
}