C# 本地计算机上已存在源
我需要构建一个监控“主”应用程序的Windows服务。所以,我在谷歌上搜索了很多,找到了开始使用服务所需的代码C# 本地计算机上已存在源,c#,service,service-installer,C#,Service,Service Installer,我需要构建一个监控“主”应用程序的Windows服务。所以,我在谷歌上搜索了很多,找到了开始使用服务所需的代码 private IContainer componentsContainer; private EventLog eventLog; public ServiceMain() { InitializeComponent(); eventLog = new EventLog(); if(!EventLog
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)微软公司。版权所有
正在运行事务处理安装
开始安装的安装阶段。见
E:\Dev\ZBMS的日志文件
1.0\ZBMS.Checks\bin\Debug\ZBMS.Checks.exe程序集的进度。该文件位于E:\Dev\ZBMS
1.0\ZBMS.Checks\bin\Debug\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
安装阶段发生异常。
System.ArgumentException:本地服务器上已存在源ZBMS
电脑
安装的回滚阶段正在开始。看内容
E:\Dev\ZBMS的日志文件的
1.0\ZBMS.Checks\bin\Debug\ZBMS.Checks.exe程序集的进度。该文件位于E:\Dev\ZBMS
1.0\ZBMS.Checks\bin\Debug\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
系统
回滚阶段已成功完成
已完成事务处理的安装。安装失败,并且
已执行回滚
我尝试的是:
- (ryber的解决方案对我不起作用,因为Visual Studio找不到引用的方法
)FindInstaller