0

現在.NetFramework2.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 ServicePack2を実行しています。パーソナルコンピュータはWindows7とVisualStudios2010を実行しています

4

1 に答える 1

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);
    }
}
于 2012-06-06T19:54:35.713 に答える