我创建了一个 C# 服务。现在我想在 Windows Server 2008 R2 上安装该服务。我正在使用InstallUtil命令安装服务。我以管理员身份打开命令提示符。
该服务应以特定用户身份运行,因此我将帐户设置为服务安装程序上的用户。
当我运行命令时出现错误:
在安装阶段发生异常:
System.ComponentModel.Win32Exception: Access Denied
。
这是日志文件:
Installing assembly 'C:\Service\MyService.exe'.
Affected parameters are:
logtoconsole =
logfile = C:\Service\MyService.InstallLog
assemblypath = C:\Service\MyService.exe
Rolling back assembly 'C:\Service\MyService.exe'.
Affected parameters are:
logtoconsole =
logfile = C:\Service\MyService.InstallLog
assemblypath = C:\Service\MyService.exe
An exception occurred during the Rollback phase of the System.ServiceProcess.ServiceProcessInstaller installer.
System.NullReferenceException: Object reference not set to an instance of an object.
An exception occurred during the Rollback phase of the installation. This exception will be ignored and the rollback will continue. However, the machine might not fully revert to its initial state after the rollback is complete.
以下是命令提示符上显示的内容:
Beginning the Install phase of the installation.
See the contents of the log file for the C:\Service\MyService.exe assembly's progress.
The file is located at C:\Service\MyService.InstallLog.
Installing assembly 'C:\Service\MyService.exe'.
Affected parameters are:
logtoconsole =
logfile = C:\Service\MyService.InstallLog
assemblypath = C:\Service\MyService.exe
An exception occurred during the Install phase.
System.ComponentModel.Win32Exception: Access Denied
at System.ServiceProcess.ServiceProcessInstaller.OpenSecurityPolicy()
at System.ServiceProcess.ServiceProcessInstaller.Install(IDictionary stateSaver)
at System.Configuration.Install.Installer.Install(IDictionary stateSaver)
at System.Configuration.Install.Installer.Install(IDictionary stateSaver)
at System.Configuration.Install.AssemblyInstaller.Install(IDictionary savedState)
at System.Configuration.Install.Installer.Install(IDictionary stateSaver)
at System.Configuration.Install.TransactedInstaller.Install(IDictionary savedState)
The Rollback phase of the installation is beginning.
See the contents of the log file for the C:\Service\MyService.exe assembly's progress.
The file is located at C:\Service\MyService.InstallLog.
Rolling back assembly 'C:\Service\MyService.exe'.
Affected parameters are:
logtoconsole =
logfile = C:\Service\MyService.InstallLog
assemblypath = C:\Service\MyService.exe
An exception occurred during the Rollback phase of the System.ServiceProcess.Ser
viceProcessInstaller installer.
System.NullReferenceException: Object reference not set to an instance of an obj
ect.
An exception occurred during the Rollback phase of the installation. This exception will be ignored and the rollback will continue. However, the machine might not fully revert to its initial state after the rollback is complete.
The Rollback phase completed successfully.
The transacted install has completed.
The installation failed, and the rollback has been performed.
有人知道我需要做什么来安装该服务吗?