服务不会在服务器上部署

时间:2012-06-06 19:26:44

标签: c# windows-services

尝试将服务安装到当前在.Net Framework 2.0下运行的服务器上。当我从安装项目运行.MSI文件时,所有内容都被复制,但是当我在SMC下检查时,服务不存在。此外,当我尝试使用InstallUtil来安装服务时,我提示没有公共安装程序,可以在程序集中找到RunInstallerAtrribute.Yes属性。当我检查我的ProjectInstaller.cs时,一切看起来都不错。此外,我可以在我的计算机上安装正常,并且我在服务器和我的盒子上都有管理员权限。

这是ProjectInstaller.cs文件

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Configuration.Install;


namespace MyService
{
    [RunInstaller(true)]
    public partial class ProjectInstaller : Installer
    {
        public ProjectInstaller()
        {
            InitializeComponent();
        }
    }
}

编辑:服务器当前正在运行Windows 2003 R2 Service Pack 2。 个人计算机正在运行Windows 7和Visual Studios 2010

1 个答案:

答案 0 :(得分:1)

以下是安装服务的一些代码示例:

[RunInstaller(true)]
public class InstallMyService : Installer
{
    public InstallMyService()
    {
        var svc = new ServiceInstaller();

        svc.ServiceName = "MyService";
        svc.Description = "This is a service";
        svc.DisplayName = "My Service";
        svc.StartType = ServiceStartMode.Automatic;

        var svcContext = new ServiceProcessInstaller();
        svcContext.Account = ServiceAccount.LocalSystem;

        Installers.Add(svc);
        Installers.Add(svcContext);
    }
}