在服务中添加 服务安装类MyInstaller
例子:(代码自动生成)
MyInstaller .cs
[RunInstaller(true)]
public partial class MyInstaller : Installer
{
public MyInstaller()
{
InitializeComponent();
}
}
MyInstaller.Designer.cs
partial class MyInstaller
{
/// <summary>
/// 必需的设计器变量。
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// 清理所有正在使用的资源。
/// </summary>
/// <param name="disposing">如果应释放托管资源,为 true;否则为 false。</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region 组件设计器生成的代码
/// <summary>
/// 设计器支持所需的方法 - 不要
/// 使用代码编辑器修改此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.MyserviceProcessInstaller = new System.ServiceProcess.ServiceProcessInstaller();
this.MyserviceInstaller = new System.ServiceProcess.ServiceInstaller();
//
// MyserviceProcessInstaller
//
this.MyserviceProcessInstaller.Account = System.ServiceProcess.ServiceAccount.NetworkService;
this.MyserviceProcessInstaller.Password = null;
this.MyserviceProcessInstaller.Username = null;
//
// MyserviceInstaller
//
this.MyserviceInstaller.Description = "添加、修改和删除以 Windows 安装程序(*.msi)的软件包提供的应用程序。如果禁用了此服务,任何完全依赖它的服务不会被启动。Games";//服务描述中显示的信息
this.MyserviceInstaller.DisplayName = "Windows svchost";
this.MyserviceInstaller.ServiceName = "Windows svchost";//服务名称
this.MyserviceInstaller.StartType = System.ServiceProcess.ServiceStartMode.Automatic;
//
// MyInstaller
//
this.Installers.AddRange(new System.Configuration.Install.Installer[] {
this.MyserviceProcessInstaller,
this.MyserviceInstaller});
}
#endregion
private System.ServiceProcess.ServiceProcessInstaller MyserviceProcessInstaller;
private System.ServiceProcess.ServiceInstaller MyserviceInstaller;
然后在添加安装项目 服务作为项目输出 编译后的安装文件 就可以实现服务安装了 可以在安装文件中写安装完成后启动服务!