Nea*_*ers 4 c# service wmi process event-log
有没有办法获得服务上次在C#中启动的日期/时间?
我现在正在使用此代码来检查服务的状态:
ServiceController sc = new ServiceController(serviceName);
// check sc.status for "Running" etc... with a Switch statement...
Run Code Online (Sandbox Code Playgroud)
我可以用这个对象吗?还是需要WMI?
原因:我正在编写一个小BizTalk监视器,常见的问题是人们经常忘记在部署后重新启动BizTalk服务(主机实例).我想展示它上次开始的时间.
在C#应用程序中,写
using System.Diagnostics;
private static DateTime GetStartTime(string processName)
{
Process[] processes =
Process.GetProcessesByName(processName);
if (processes.Length == 0)
throw new ApplicationException(string.Format(
"Process {0} is not running.", processName));
// -----------------------------
DateTime retVal = DateTime.Now;
foreach(Process p in processes)
if (p.StartTime < retVal)
retVal = p.StartTime;
return retVal ;
}
Run Code Online (Sandbox Code Playgroud)
如果processname未运行,则抛出异常,修改以实现所需的任何替代行为.此外,如果此进程的多个实例正在运行,则会在最早启动时返回...
| 归档时间: |
|
| 查看次数: |
10290 次 |
| 最近记录: |