Visual Studio 2010:Windows服务安装程序 - 如何指定服务凭据

时间:2011-07-11 09:50:15

标签: windows visual-studio-2010 service installer credentials

我已经使用Visual Studio 2010创建了一个Windows服务和一个关联的安装程序。所有这些工作正常,安装程序创建服务,并将其登录凭据设置为本地系统 - 如在ServiceInstaller代码中指定的那样该项目。

但是,本地系统不足以满足应用程序的需求。我需要允许用户在安装程序中指定用于服务的相应凭据。我不希望有一个自定义UI屏幕,它获取值并将它们存储在注册表中以供使用的安装后脚本,我也不想硬编码安装程序中的详细信息(因为这将用于许多具有用于服务的不同帐户和域的站点。)

任何人都可以提供有关如何执行此操作的建议吗?我猜它会涉及一个自定义动作DLL或类似的东西。

2 个答案:

答案 0 :(得分:0)

首先,您需要添加一个自定义对话框,用于检索服务凭据。也许本教程可以提供帮助:http://www.codeproject.com/KB/install/vsSetupCustomDialogs.aspx

然后,可以将与服务编辑框关联的安装程序属性用于您的服务。安装程序类操作无法直接访问安装程序属性。因此,您需要使用其他自定义操作。例如,您可以使用设置服务凭据的自定义命令行启动sc.exe

最后,您需要确保为指定的用户帐户设置了“作为服务登录”策略。也许这会有所帮助: WIX: Windows Service Repair failing on lack of permissions + how to detecting repair mode?

答案 1 :(得分:0)

只需将用户名和密码设置为null即可。 它将促进一个输入对话框。