7,774
社区成员




public Win32ServiceManager(string host, string userName, string password, bool isLocal)
{
this.sHost = host;
this.strPath = "\\\\" + host + "\\root\\cimv2:Win32_Service";
this.managementClass = new ManagementClass(strPath);
if (userName != null && userName.Length > 0)
{
ManagementScope managementScope;
if (isLocal)
{
managementScope = new ManagementScope("\\\\" + host + "\\root\\cimv2");
}
else
{
ConnectionOptions connectionOptions = new ConnectionOptions();
connectionOptions.Username = userName;
connectionOptions.Password = password;
managementScope = new ManagementScope("\\\\" + host + "\\root\\cimv2", connectionOptions);
}
this.managementClass.Scope = managementScope;
}
}
string sServicesName;
string sState;
string sStartMode;
string[,] services = new string[this.managementClass.GetInstances().Count, 4];
int i = 0;
foreach (ManagementObject mo in this.managementClass.GetInstances())
{
sServicesName = (string)mo["Name"];
if (sServicesName.Length < 4)
continue;
if (sServicesName.Substring(0, 4) == "ZYTK")
{
services[i, 0] = sServicesName;
services[i, 1] = (string)mo["Description"];//描述
sState = (string)mo["State"];
if (sState.Trim() == "Running")
services[i, 2] = "已启动";
else
services[i, 2] = "停止";
sStartMode = (string)mo["StartMode"];
if (sStartMode.Trim() == "Auto")
services[i, 3] = "自动";
if (sStartMode.Trim() == "Disabled")
services[i, 3] = "已禁用";
if (sStartMode.Trim() == "Manual")
services[i, 3] = "手动";
i++;
}
else
continue;
}
return services;
public string[,] GetZytkServiceList()
{
string sServicesName;
string sState;
string sStartMode;
string[,] services = new string[this.managementClass.GetInstances().Count, 4];
int i = 0;
foreach (ManagementObject mo in this.managementClass.GetInstances())
{
sServicesName = (string)mo["Name"];
if (sServicesName.Length < 4)
continue;
if (sServicesName.Substring(0, 4) == "ZYTK")
{
services[i, 0] = sServicesName;
services[i, 1] = (string)mo["Description"];//描述
sState = (string)mo["State"];
if (sState.Trim() == "Running")
services[i, 2] = "已启动";
else
services[i, 2] = "停止";
sStartMode = (string)mo["StartMode"];
if (sStartMode.Trim() == "Auto")
services[i, 3] = "自动";
if (sStartMode.Trim() == "Disabled")
services[i, 3] = "已禁用";
if (sStartMode.Trim() == "Manual")
services[i, 3] = "手动";
i++;
}
else
continue;
}
return services;
}
第二段代码 少了个头