【发布时间】:2010-11-17 01:41:28
【问题描述】:
我创建了一个将帐户设置为用户的 Windows 服务。这意味着当我安装服务时,我需要传递用户名和密码。有没有办法在 ProjectInstaller 类中或在 BeforeInstall 事件中设置这些?如果是这样怎么办?
【问题讨论】:
标签: c# windows vb.net windows-services
我创建了一个将帐户设置为用户的 Windows 服务。这意味着当我安装服务时,我需要传递用户名和密码。有没有办法在 ProjectInstaller 类中或在 BeforeInstall 事件中设置这些?如果是这样怎么办?
【问题讨论】:
标签: c# windows vb.net windows-services
项目安装程序的以下添加将在安装期间分配服务登录信息。
public ProjectInstaller()
{
InitializeComponent();
serviceProcessInstaller1.Account = System.ServiceProcess.ServiceAccount.<account type>;
serviceProcessInstaller1.Username = <domain\userId>;
serviceProcessInstaller1.Password = <password>;
}
【讨论】:
【讨论】:
A Windows Service without a template 有一些关于设置服务参数和内容的内容,位于第 5 页的关于自定义服务的部分。
【讨论】:
通常,您可以将这些凭据传递给 Installer 类。您可以对其进行硬编码或将其作为命令行参数传递。第二种方法更合适,但它会要求您不必要地解析命令行参数。
我向你建议第三种方法...
嗨!我是一个开放的开发者 源 Windows 服务托管 称为 Daemoniq 的框架。并且路过 通过命令行的凭据是其中之一 它的特点。你可以从 http://daemoniq.org
目前的功能包括:
- 通过 CommonServiceLocator 提供与容器无关的服务位置
- 设置常用服务属性,如 serviceName、displayName、description 和 serviceStartMode 通过 app.config
- 在同一进程上运行多个 Windows 服务
- 通过 app.config 设置恢复选项
- 通过 app.config 设置依赖的服务
- 通过命令行设置服务进程凭据
- 通过命令行安装、卸载、调试服务
干杯!
【讨论】: