以管理员身份在Windows 2008中运行.bat文件。
我在Windows 2008中安装了Java Application作为用户(用户名是Test。用户组是Admin)。此应用程序使用JSW并生成.bat文件以在Windows平台中启动应用程序。这个.bat文件是在maven插件的帮助下创建的。
现在的问题是,如果我点击.bat文件作为普通的Windows用户使用默认安全设置,那么它不会启动我的应用程序。如果我将.bat文件作为“以管理员身份运行”启动,则应用程序启动。如果我更改'Test'用户的安全设置并且make是自由的,那么我可以在不运行'Run as Admin'的情况下启动应用程序。
我想自动执行此步骤。我不希望用户执行“以管理员身份运行”或更改其安全设置。所以我提出了在安装应用程序后运行某些vb脚本的解决方案,以便该文件对该.bat文件进行一些安全设置,以便'Test'用户可以一步启动.bat文件。这是可能的还是更好的解决方案?
顺便说一下,我使用Install Anywhere安装程序。
经过一段时间的努力,我发现我还可以更改指向.bat文件的快捷方式文件的设置(高级属性)。此快捷方式具有高级属性,其中有“以管理员身份运行”选项。如果选中该选项,那么我的问题就解决了。所以我想知道是否可以从vb脚本中检查该选项?如果是,那么任何提示?如果没有,那么有什么改变呢?
我发现http://nsis.sourceforge.net/ShellLink_plug-in但我不知道如何在vb脚本中执行此操作。
答案 0 :(得分:0)
我认为在没有提示输入密码的情况下,可以在批处理文件中执行此操作。您可以创建一个小型c ++启动程序来请求权限,然后运行您的Java应用程序。
答案 1 :(得分:0)
您使用的是什么版本的JSW?
从JSW 3.5.7版开始,当您启动/停止Java应用程序作为Windows服务时,它将自动请求提升管理员权限。
这是来自JSW release notes for 3.5.7:
实现了一种安装,删除,启动,停止等方式的包装器 作为来自非提升(UAC)控制台的Windows服务。包装是 使用子进程透明地提升。这需要开始 Windows Vista和2008与Windows的顺畅交互 服务经理。
干杯,