gpt4 book ai didi

c# - 使用 ManagementScope (WMI) - 有什么问题吗?

转载 作者:行者123 更新时间:2023-11-30 18:07:18 26 4
gpt4 key购买 nike

我想使用 System.Management.ManagementScope 来查询当前登录的用户列表。

这将是我们将部署给客户的更大应用程序的一部分,因此它需要易于设置且高度可靠。

ManagementScope/WMI 合适吗?在大多数操作系统上是否始终可以查询?是否有任何我必须考虑的安全问题,例如非提升用户登录到工作站,该用户是否能够查询 WMI?系统帐户会作为服务运行吗?

在走这条路之前我应该​​知道的任何其他陷阱?

谢谢

最佳答案

运行服务的系统帐户是我们处理它的方式,因为并非所有用户都是本地管理员。我们将服务与 GUI 同时推出,并通过 IPC channel 与其对话。它有效,而且比担心用户可以在 WMI 中看到哪些范围更容易。在我们的例子中,它还有助于写入事件日志。

WMI 可能是最简单的方法。您可以查看 pinvoke/Win32 API(甚至可能是终端服务器 API),但 WMI 可能是最容易启动和可靠运行的。

我在使用 WMI 时遇到的唯一问题是速度 - 尽管我通常会遇到这些关于过于宽泛的硬件查询的问题,所以我认为这可能是我的问题。

据我所知,Windows 2000 及更低版本需要与 Windows XP 及更高版本不同的查询,因为对于 XP 及更高版本,您查询 Win32_LogonSession 以获得 LogonType=2(交互式)的结果。由于 2000 及以下版本仅支持单个登录控制台用户,您只需查询 Win32_ComputerSystem 并获取返回结果的 UserName 属性即可。

关于c# - 使用 ManagementScope (WMI) - 有什么问题吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4046692/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com