我们正在尝试安装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。
非常感谢任何帮助。
答案 0 :(得分:0)
假设您使用的是基本MSI项目类型,我发现ServiceInstall,ServiceControl和Registry表的组合是一个很好的解决方案。由于ServAny实际上只是一个thunking层,ServiceInstall表无法在没有Registry表的帮助的情况下完全描述服务。仍然,不需要自定义操作,MSI将非常稳固和强大。
答案 1 :(得分:0)
由于我们无法在可用时间内找到有利的解决方案,因此我们决定不使用srvany.exe。我们决定使用YAJSW并在InstallShield中使用“文本文件更改”来修改包装器,以便YAJSW启动我们的java应用程序。