如何在未安装Visual Studio的计算机上安装Windows服务?

问题描述 投票:28回答:10

安装Windows服务的唯一方法我知道是使用“Visual Studio 2008命令提示符”,有没有办法在没有安装Visual Studio的机器上安装windows-service(假设.Net版本2.X是安装。)

c# .net windows-services
10个回答
44
投票

你可以使用位于.net框架文件夹中的installUtil(在我的机器上它是C:\ Windows \ Microsoft.NET \ Framework \ v2.0.50727)。


1
投票

步骤1>安装.net框架(我使用的是.net 4.0,但您可以根据需要使用)

步骤2>转到run + cmd然后单击确定或直接转到窗口命令提示符(不是visual studio命令提示符)

第3步>键入这些行

> cd C:\Windows\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe
> E:\test\test\bin\Debug\test.exe

E:\test\test\bin\Debug\是保存窗口服务设置的路径

C:\Windows\Microsoft.NET\Framework\v4.0.30319\是InstallUtil.exe存在的路径。

在两个InstallUtil.exe中都存在。和路径必须给一个空间。否则,它会引发错误。

步骤4>享受..您的服务已安装...现在您可以从控制面板>管理工具>服务进行检查。


8
投票

您可以将Windows服务安装为MSI。将MSI创建为附加到服务项目的普通项目。

在您的服务项目中创建安装程序类并添加组件serviceInstaller和serviceProcessInstaller并根据需要进行配置。将项目输出从服务项目添加到MSI项目,将安装,提交,回滚和卸载的MSI项目的自定义操作设置为服务项目的输出。

根据需要以任何其他方式更改MSI项目,构建MSI,然后您就可以将服务安装到任何没有VS.NET的Windows计算机或使用InstallUtil实用程序应用程序。 MSI还将处理卸载等。

serviceProcessInstaller组件的属性可以为Account运行Service而设置,serviceInstaller包含可以设置的属性,例如Service Name。您必须设置ServiceName及其Parent,MSDN将提供有关如何使用这两个组件的良好信息。

希望这可以帮助。

干杯。


7
投票

相关的MSDN页面:http://msdn.microsoft.com/en-us/library/sd8zc8ha%28VS.80%29.aspx

C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\installutil.exe yourproject.exe

您无需安装Visual Studio即可使用。


5
投票

是的,installutil.exe运行良好,但我厌倦了必须记住启动Visual Studio 2008命令提示符才能使用它。总是,我打开一个普通的控制台只是为了意识到installutil.exe位置不是路径的一部分。

幸运的是,installutil.exe是一组反射调用的包装器。来自MSDN,

Installutil.exe使用反射检查指定的程序集,并找到Installer设置为true的所有RunInstallerAttribute类型。然后,该工具在Installer类型的每个实例上执行Install Method或Uninstall Method。

这意味着可以向Windows服务添加代码以使其自行安装和卸载。通过这样做,我不再需要installutil.exe或Visual Studio 2008命令提示符来运行它。

我已经提供了如何做这个here的分步指南。 -install选项安装Windows服务并启动它。相反,-uninstall选项会停止服务并将其卸载。


3
投票

使用visual studio命令提示符:

installutil /i fullfilepathtoservice.exe

没有visual studio命令提示符:

C:\WINNT\Microsoft.NET\Framework\v1.1.4322 installutil /i fullfilepathtoservice.exe

HTH。


2
投票

打开命令提示符(cmd)并键入

帮助sc

sc创造

另外,您可能正在谈论的installutil.exe实际上只是在.Net Framework目录中。 VS的命令提示符只是设置了一个很好的路径,但你可以从(我的路径)C:\ Windows \ Microsoft.NET \ Framework \ v2.0.50727启动它就好了。


2
投票

您不需要Visual Studio 2008命令提示符。您需要可以在其中找到的InstallUtil.exe程序

C:\ WINDOWS \ Microsoft.NET \框架\ V2.0.50727

在x64机器上还有一个64位版本

C:\ WINDOWS \ Microsoft.NET \ Framework64 \ V2.0.50727

这些目录显然仅在安装.NET时可用。


2
投票

所有这一切都是将.Net框架工具放到PATH上;您可以继续使用:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\InstallUtil.exe通过在正常命令提示符上指定完整路径(显然调整您的框架/ CPU架构)


1
投票

我想你正在寻找“installutil.exe”程序,用于安装.NET Windows服务。您可以在%windir%\ Microsoft.NET \ Framework \ v2.0.50727中找到它

© www.soinside.com 2019 - 2024. All rights reserved.