我正在尝试列出域上的远程注册表文件夹。我能够列出密钥,但不能递归地使用 WMI 或 OpenRemoteBaseKey。我想获取 x32 和 x64 的注册表文件夹和子文件夹上的键名、值、类型,最好使用 WMI,因为我需要有关客户端的其他信息。
这实际上是我的代码,但需要改进:
foreach (string strComputer in arrComputers)
{
Console.WriteLine("==========================================");
Console.WriteLine(" Computer: " + strComputer);
Console.WriteLine("==========================================");
ManagementClass classInstance =
new ManagementClass("\\\\" + strComputer + "\\root\\DEFAULT",
"StdRegProv", null);
ManagementBaseObject inParams =
classInstance.GetMethodParameters("EnumValues");
inParams["sSubKeyName"] = "SOFTWARE\\IPS";
ManagementBaseObject outParams =
classInstance.InvokeMethod("EnumValues", inParams, null);
Console.WriteLine("Out parameters:");
Console.WriteLine("ReturnValue: " + outParams["ReturnValue"]);
Console.WriteLine("sNames: " + outParams["sNames"]);
Console.WriteLine("Types: " + outParams["Types"]);
}
提前致谢。