我想使用Windows命令提示符(而不是Visual Studio命令提示符)安装Windows服务。
我怎么做呢?
我想使用Windows命令提示符(而不是Visual Studio命令提示符)安装Windows服务。
我怎么做呢?
当前回答
在你的windows service exe文件旁边创建一个*.bat文件,使用以下上下文进行安装:
CLS
ECHO Installing My Windows Service
START %windir%\Microsoft.NET\Framework\v4.0.30319\installutil.exe "%~d0%~p0\YourWindowsServiceExeName.exe"
在windows service exe文件旁边创建一个*.bat文件,使用以下上下文进行卸载:
CLS
ECHO Uninstalling My Windows Service
START %windir%\Microsoft.NET\Framework\v4.0.30319\installutil.exe -u "%~d0%~p0\YourWindowsServiceExeName.exe"
以Admin身份运行每个bat文件来安装或卸载windows服务。
其他回答
您可以使用InstallUtil安装任何windows服务。 1: C:\Windows\Microsoft.NET\Framework64\v4.0.30319在命令提示符下以管理员身份运行。 2:复制Exe路径并输入InstallUtil.exe "your Exe path" 然后按回车键。
如果你想要视觉化。转到下面的链接。 这对我帮助很大。
https://youtu.be/yrdyYxzI7SE
导航到。net文件夹中的installutil.exe(对于。net 4,它是C:\Windows\Microsoft.NET\Framework\v4.0.30319),并使用它来安装您的服务,如下所示:
"C:\Windows\Microsoft.NET\Framework\v4.0.30319\installutil.exe" "c:\myservice.exe"
关于评论,对于64位应用程序,使用下面的方法:
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\installutil.exe
请执行以下操作:
以管理员权限启动命令提示符(CMD)。 输入c:\windows\microsoft.net\framework\v4.0.30319\installutil.exe[你的windows服务路径到exe] 按回车键,就是这样!
使用管理员权限打开是很重要的,否则您可能会发现出现一些毫无意义的错误。如果你得到任何,检查你已经打开它与管理权限第一!
要以管理员权限打开,右键单击“命令提示符”并选择“以管理员身份运行”。
来源: http://coderamblings.wordpress.com/2012/07/24/how-to-install-a-windows-service-using-the-command-prompt/
打开开发人员命令提示符为Admin并导航到
cd C:\Windows\Microsoft.NET\Framework\v4.0.30319
现在使用你的。exe所在的路径
InstallUtil "D:\backup\WindowsService\WindowsService1\WindowsService1\obj\Debug\TestService.exe"
如果目录名有空格,如c:\program files\abc 123,则必须在路径周围使用双引号。
installutil.exe "c:\program files\abc 123\myservice.exe"
如果你像下面这样设置一个bat文件,事情就会简单得多,
例如,要安装一个服务,创建一个“myserviceinstaller.bat”和“以管理员身份运行”
@echo off
cd C:\Windows\Microsoft.NET\Framework\v4.0.30319
installutil.exe "C:\Services\myservice.exe"
if ERRORLEVEL 1 goto error
exit
:error
echo There was a problem
pause
要卸载服务,
只需在installutil命令中添加一个-u。
cd C:\Windows\Microsoft.NET\Framework\v4.0.30319
C:\Windows\Microsoft.NET\Framework\v4.0.30319\installutil.exe -u "C:\Services\myservice.exe"