安装srvany.exe以使用InstallShield将jar文件作为服务运行(无需编辑注册表)

时间:2012-10-17 15:40:45

标签: windows-services installshield

我们正在尝试安装Java程序以作为Windows服务运行。在各种可用选项(JSW,YAJSW,Launch4J,procrun,WinRun4J等)中,我们想使用srvany.exe并使用InstallShield安装它。 Windows文档说......

  

使用RegEdit:为您的服务创建“参数”键(例如HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MyService\Paramaters\)   使用RegEdit:在新创建的“Parameters”键中,创建一个名为Application的字符串值,并输入要作为服务运行的应用程序的完整路径。

有没有办法在不使用InstallShield的注册表编辑器的情况下使用InstallShield实现此目的?是否有一个InstallScript调用可以负责向注册表中的srvany条目添加和删除“参数”?该解决方案适用于Windows 2008R2& 2003R2。

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:0)

假设您使用的是基本MSI项目类型,我发现ServiceInstall,ServiceControl和Registry表的组合是一个很好的解决方案。由于ServAny实际上只是一个thunking层,ServiceInstall表无法在没有Registry表的帮助的情况下完全描述服务。仍然,不需要自定义操作,MSI将非常稳固和强大。

答案 1 :(得分:0)

由于我们无法在可用时间内找到有利的解决方案,因此我们决定不使用srvany.exe。我们决定使用YAJSW并在InstallShield中使用“文本文件更改”来修改包装器,以便YAJSW启动我们的java应用程序。