我想使用Windows命令提示符(而不是Visual Studio命令提示符)安装Windows服务。

我怎么做呢?


当前回答

导航到。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

其他回答

当您的程序集版本和您的Visual studio项目在dot net 2或4上的biild设置安装相同的版本时。

使用installutil安装相同版本的service

如内置点网4个

输入c: \ windows \ microsoft.net \ framework \ v4.0.30319 \ installutil.exe

如内置点网2

输入c: \ windows \ microsoft.net \ framework \ v2.0.11319 \ installutil.exe

在部署Windows服务时,请遵循以下步骤,不要浪费时间:

以Admin权限运行命令提示符 在IDE中编译时确保发布模式 在设计视图上给项目安装程序指定一个类型 请根据实际情况选择认证类型 确保软件依赖关系:如果您正在使用证书,请正确安装 在你的控制台这样写: C:\Windows\ Microsoft.NET \ Framework \ yourRecentVersion \ installutil.exe c: \ yourservice.exe

在exe路径-i c:\之前有一个隐藏的-i参数,您可以使用-u卸载

查看您的.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"

以管理员权限启动命令提示符(CMD)。 输入c:\windows\microsoft.net\framework\v4.0.30319\installutil.exe[你的windows服务路径到exe] 按return键

请执行以下操作:

以管理员权限启动命令提示符(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/