0

我需要查询 Windows 域上远程工作站的文件系统。程序应搜索远程文件系统是否存在特定文件名和文件路径。例如,假设我想查明“c:\program files\mozilla\firefox.exe”或“c:\program files\chrome\chrome.exe”是否存在于 10,000 台机器的域中的任何工作站上。

我知道哪些选项:1)仅使用 WIN32 API 和使用具有管理员共享访问权限的 UNC 路径进行 Windows 模拟的 C# 代码,如 \ServerName\C$\FolderName。(我不确定我们是否需要从域服务器运行应用程序才能获取工作站管理员共享访问)。

2) 将 WMI 与 C# 管理类一起使用,通过域管理员凭据模拟获取远程系统访问权限,然后使用查询获取远程文件信息。

我已经实现了这两种场景,但我不确定哪一个最好并且实时运行良好。我只测试了我可用的 2-3 个系统网络。

我心中有疑问。

1) 哪个选项最适合这种情况?2) 哪一个更快、更安全、更一致?

请向我建议其中之一或任何可满足上述要求的最佳选择。

谢谢你,拉维

4

1 回答 1

1

无需从域控制器运行它。使用适当的权限,您可以从任何地方运行 WMI 查询。事实上,将它们推送到 DC 会为查询添加一个跃点,并且可能比直接查询要慢。如果您有该进程的域管理员权限,我只需直接查询 unc 路径以进行文件存在检查,然后就可以完成了。

于 2012-04-29T18:25:39.510 回答