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

我怎么做呢?


当前回答

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

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

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

查看您的.exe路径,以查看日志文件。您可以使用事件查看器来观察该功能

其他回答

SC Create命令没有问题。 你只需要知道正确的参数:

SC CREATE "MySVC" binpath= "D:\Me\Services\MySVC\MySVC.exe"

如果你正在使用Powershell并且你想要安装。net服务,你可以使用install - service模块。它是InstalUtil工具的包装器。

它公开了3个命令

Install-Service -调用InstallUtil.exe pathToExecutable命令 Install-ServiceIfNotInstalled -首先检查服务是否存在 如果不执行Install-Service方法,则安装 Uninstall-Service-它卸载服务。可执行文件路径的ServiceName可以使用。

这个模块的代码可以在这里查看

您应该打开命令提示符,转到

C:\windows\microsoft.net\framework\v4.0.30319\InstallUtil.exe -i " windows服务的exe文件"

在你的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服务。

1.从开始菜单中,选择Visual Studio目录,然后为VS选择开发人员命令提示符。

2.出现Visual Studio的开发人员命令提示符。

3.访问项目已编译的可执行文件所在的目录。

4.以项目的可执行文件作为参数,从命令提示符运行InstallUtil.exe