我需要构建一个Windows服务来监控' main'应用。所以,我搜索了很多,并找到了开始使用服务所需的代码。
private IContainer componentsContainer;
private EventLog eventLog;
public ServiceMain()
{
InitializeComponent();
eventLog = new EventLog();
if(!EventLog.SourceExists("TestWindowsService"))
EventLog.CreateEventSource("TestWindowsService", "Checks");
eventLog.Source = "TestWindowsService";
eventLog.Log = "Checks";
}
protected override void OnStart(string[] args)
{
var timer = new Timer {Interval = 60000};
timer.Elapsed += OnTimer;
timer.Start();
}
protected void OnTimer(object sender, ElapsedEventArgs e)
{
// checks here
}
protected override void OnStop()
{
// {...}
// eventually, delete all the chunk we collected during the process
}
我对安装程序的唯一更改是描述,显示名称,服务名称和开始类型设置为manual
。这是安装
Microsoft(R).NET Framework安装实用程序版本4.6.1586.0 版权所有(C)Microsoft Corporation。保留所有权利。
运行事务安装。
开始安装的安装阶段。看到的内容 E:\ Dev \ ZBMS的日志文件 1.0 \ ZBMS.Checks \ bin \ Debug \ ZBMS.Checks.exe程序集的进度。该文件位于E:\ Dev \ ZBMS 1.0 \ ZBMS.Checks \ BIN \调试\ ZBMS.Checks.InstallLog。安装程序集&#; E:\ Dev \ ZBMS 1.0 \ ZBMS.Checks \ bin \ Debug \ ZBMS.Checks.exe'。受影响 参数是:logtoconsole = logfile = E:\ Dev \ ZBMS 1.0 \ ZBMS.Checks \ bin \ Debug \ ZBMS.Checks.InstallLog assemblypath = E:\ Dev \ ZBMS 1.0 \ ZBMS.Checks \ bin \ Debug \ ZBMS.Checks.exe安装 服务ZBMS ...服务ZBMS已成功安装。创建 日志应用程序中的EventLog源ZBMS ...
安装阶段发生异常。 System.ArgumentException:源ZBMS已存在于本地 计算机。
安装的回滚阶段正在开始。看到内容 E:\ Dev \ ZBMS的日志文件 1.0 \ ZBMS.Checks \ bin \ Debug \ ZBMS.Checks.exe程序集的进度。该文件位于E:\ Dev \ ZBMS 1.0 \ ZBMS.Checks \ BIN \调试\ ZBMS.Checks.InstallLog。回滚组件' E:\ Dev \ ZBMS 1.0 \ ZBMS.Checks \ bin \ Debug \ ZBMS.Checks.exe'。 受影响的参数是:logtoconsole = logfile = E:\ Dev \ ZBMS 1.0 \ ZBMS.Checks \ bin \ Debug \ ZBMS.Checks.InstallLog assemblypath = E:\ Dev \ ZBMS 1.0 \ ZBMS.Checks \ bin \ Debug \ ZBMS.Checks.exe恢复事件 登录源ZBMS的先前状态。服务ZBMS正在被删除 从系统...服务ZBMS已成功删除 系统
回滚阶段已成功完成。
已完成事务处理安装。安装失败了,而且 回滚已经完成。
我尝试了什么:
FindInstaller
)我很难解决这个问题。