我有一个java应用程序。该应用程序在 Windows Server 2008 r2 上作为 Windows 服务(使用 procrun 包装器)运行。通过 install.bat 文件将应用程序安装为 Windows 服务,其中包含以下文本:
set "APPLICATION_SERVICE_HOME=%cd%"
set SERVICE_NAME=CollectDO
set PR_DESCRIPTION= Обеспечивает прием сведений по ДО и запись их в БД
set PR_DISPLAYNAME=Сбор данных по ДО
set EXECUTABLE_NAME=prunsrv.exe
set PR_INSTALL=%APPLICATION_SERVICE_HOME%\%EXECUTABLE_NAME%
REM Service log configuration set
PR_LOGPREFIX=%SERVICE_NAME%
set PR_LOGPATH=%APPLICATION_SERVICE_HOME%\Servicelog
set PR_LOGLEVEL=Info
REM Path to java installation
set PR_JVM=..\..\jre\bin\server\jvm.dll
set PR_CLASSPATH=..\dist\SvhWinService.jar
REM Startup configuration
set PR_STARTUP=auto
set PR_STARTMODE=jvm
set PR_STARTCLASS=svhwinservice.SvhWinServWrapper
set PR_STARTMETHOD=start
REM Shutdown configuration
set PR_STOPMODE=jvm
set PR_STOPCLASS=%PR_STARTCLASS%
set PR_STOPMETHOD=stop
REM JVM configuration
set PR_JVMMS=256
set PR_JVMMX=1024
set PR_JVMSS=4000
set PR_JVMOPTIONS=-Duser.language=EN;-Duser.region=en
:remove
::---- Remove the service -------
%EXECUTABLE_NAME% //DS//%SERVICE_NAME%
echo The service '%SERVICE_NAME%' has been removed
REM goto end
REM Install service
%EXECUTABLE_NAME% //IS//%SERVICE_NAME%
当我以管理员身份从控制台(cmd.exe)启动此文件时 - 然后服务部署正常。但是,如果我创建 install.bat 的快捷方式并尝试以管理员身份启动 - 那么服务不会部署。我认为这是因为用户控制帐户(因为在 Windows XS 和 Windows Server 2003 上从快捷方式部署工作正常),但我无法更改这些设置。如何在 Windows server 2008 r2 上解决这个问题?