我一直在关注如何创建C#Windows服务;一切都很好,但没有人说如何在安装结束时运行te服务,安装文件夹中的特定文件(在我的情况下为hidden.vbs)(我的应用程序有2个项目:服务本身和设置)。 安装完成后,该服务将启动PROJECT_NAME.exe和PROJECT_NAME.svhost.exe
如果您需要任何其他代码以帮助我,请告诉我... 这是我的Program.cs
using System.ComponentModel;
using System.Configuration.Install;
using System.Linq;
using System.ServiceProcess;
namespace PROJECT_NAME
{
[RunInstaller(true)]
public partial class ProjectInstaller : System.Configuration.Install.Installer
{
public ProjectInstaller()
{
InitializeComponent();
}
private void serviceInstaller1_AfterInstall(object sender, InstallEventArgs e)
{
new ServiceController(serviceInstaller1.ServiceName).Start();
}
}
}
Service1.cs
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Linq;
using System.ServiceProcess;
using System.Text;
namespace PROJECT_NAME
{
public partial class Service1 : ServiceBase
{
public Service1()
{
InitializeComponent();
}
public void OnDebug()
{
OnStart(null);
}
protected override void OnStart(string[] args)
{
System.IO.File.Create(AppDomain.CurrentDomain.BaseDirectory + "OnStart.txt");
}
protected override void OnStop()
{
System.IO.File.Create(AppDomain.CurrentDomain.BaseDirectory + "OnStart.txt");
}
}
}
此外,这是我的解决方案资源管理器http://i.imgur.com/wbqUGOc.png的图片;请告诉我应该如何或在哪里导入我需要运行服务的文件。
这是我第一次参加C#,我现在不愿意理解它,但要提供这项服务,因为我的工作需要它。
答案 0 :(得分:0)
您的脚本可以执行以下几种操作之一来启动服务:
net start
控制台命令以启动服务(例如net start "My Service Name"
)OR