我们正在尝试获取我们计算机的 GPO 信息。因此我们想使用 c# - 而不是 gpresult.exe(因为它可以在系统上下文中执行......)。
好吧,我发现有一个 DLL Microsoft.GroupPolicy.Management.dll 可以在 C# 中导入。这听起来太容易了:
using Microsoft.GroupPolicy;
[...]
GPRsop rsop = new GPRsop(RsopMode.Logging, "root\\RSOP\\Computer");
rsop.LoggingComputer = "MyComputer";
rsop.LoggingUser = "domain\\user";
rsop.LoggingMode = LoggingMode.Computer;
rsop.CreateQueryResults();
rsop.GenerateReportToFile(ReportType.Xml, "C:\\Temp\\test.xml");
作为输出文件,我得到了这个:
<?xml version="1.0" encoding="utf-16"?>
<Rsop xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.microsoft.com/GroupPolicy/Rsop">
<ReadTime>2013-05-06T13:28:17.1529206Z</ReadTime>
<DataType>LoggedData</DataType>
</Rsop>
任何曾经使用过这个 DLL 的人都可以给我一些提示吗?提前致谢!
干杯