0
因此,我有一些代码来查询特定计算机对象的多个域并将结果输出到csv。这是我的代码。查询计算机对象的多个域
class Program
{
static void Main(string[] args)
{
try
{
string log = "C:\\Users\\User\\Desktop\\New.csv";
using (FileStream file = new FileStream(log, FileMode.Append, FileAccess.Write))
{
StreamWriter writer = new StreamWriter(file);
var domains = File.ReadLines("C:\\Users\\User\\Desktop\\domains.csv");
foreach (var line in domains)
{
PrincipalContext AD = new PrincipalContext(ContextType.Domain, line.ToString());
ComputerPrincipal query = new ComputerPrincipal(AD);
query.Name = "COMPNAME";
PrincipalSearcher search = new PrincipalSearcher();
search.QueryFilter = query;
ComputerPrincipal result = (ComputerPrincipal)search.FindOne();
if (result != null)
{
writer.WriteLine(result.DistinguishedName);
}
}
}
}
catch (Exception ex)
{
Console.WriteLine(ex.ToString());
Console.ReadLine();
}
}
}
domains.csv文件包含我们所有的10个域。 result
总是显示为null
。我错过了什么?
编辑:对不起,伙计们。代码工作正常。这是作家未能创建CSV。
当你实际上通过代码设置断点vs只是运行它时发生了什么?..?你能告诉我们实际的.csv文件的内容是什么样子..? – MethodMan
我刚刚用控制台写入代替作家,它工作正常。需要修复作家。 – maltman
您还需要更换此行'Console.WriteLine(ex.ToString());'与 'Console.WriteLine(ex.Mesage);' – MethodMan