c# - 如何从本地 Windows 服务获取“登录身份”信息
问题描述
据我所知,“ServiceController”没有从本地 Windows 服务中提取“登录身份”信息的选项。
目前我正在使用 ServiceController 为我提供服务的显示名称和当前状态,但我也想提取“登录为”信息。
我确实看到 wmic 可以使用以下方法从 startname 获取此信息:
wmic service get name,startname
目前这是我的代码:
public string GetLocalServices()
{
var sc = new System.ServiceProcess.ServiceController();
ServiceController[] svcList = ServiceController.GetServices();
try
{
foreach (ServiceController service in ServiceController.GetServices())
{
string serviceDisplayName = service.DisplayName;
string status = service.Status.ToString();
var serviceDetails = "Display Name: " + serviceDisplayName + "Service Status: " + status + "\r\n" + "\r\n";
File.AppendAllText(Path.Combine(_TempPath, @"LocalServices.txt"), serviceDetails.ToString());
}
return "Retrieving Local Services Information complete.";
}
catch (Exception ex)
{
return string.Concat("!!! Exception: Unable to gather information on local services ", ex.Message);
}
}
有谁知道我如何在此类中查询 wmic 并将其附加到 serviceDetails 变量中,以便我也可以打印出 Log On As 信息?
解决方案
看看 microsoft 的 WMI 代码创建器工具(下载链接如下)。此工具为您提供 C# 代码片段,供您查找所需内容。
https://www.microsoft.com/en-us/download/details.aspx?id=8572
单击链接以查看该工具如何工作的图像。 WMI 代码创建者
推荐阅读
- reactjs - 在 ReactJS 中集成时出现 WalletConnect 错误 - Uncaught (in promise) TypeError: this.send is not a function
- sql - 如何有效地连接这些列(多行) MS SQL
- outlook - MailboxNotEnabledForRESTAPI - Microsoft Graph API 与启用 HMA 的本地服务器集成
- php - 测试 facebook business-sdk 时出错
- open-telemetry - 从隐式上下文中获取当前活动范围
- python - 使用 Django 在多边形中实现点搜索
- javascript - 错误太多重新渲染。react 限制渲染次数以防止无限循环
- python - 错误:需要 Microsoft Visual C++ 14.0 或更高版本
- python - 在 python modulenotfounderror 中:没有名为“json”的模块
- python - Python np.fromfile 给出错误:Errno 2 No such file or directory