2013-07-17 168 views
11

嗨我已经在Visual Studio中开发了一个C#Windows服务。 我能够在我的本地机器上安装此服务,并且它工作正常。 现在我想能够安装在远程服务器如何在远程服务器上安装C#Windows服务?

你能告诉我该怎么做吗?

我的服务只是建立在Windows服务VS模板上,所以它非常简单

我不是那么的怪异,所以它会对我能理解的一些教程,手册有用。

我正在运行VS 2010 Professional。

+1

为什么你不能像你在本地机器上那样做? – crush

+1

本地安装并将其安装在远程服务器上有什么区别? –

+0

目前我在本地机器上使用VS External Tools安装 命令:C:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ InstallUtil.exe 参数:MyService.exe 初始目录:$(ProjectDir)/ bin/debug 我可以在VS 2010 Professional的远程服务器上安装吗? – RuneHansen

回答

15

您需要远程桌面访问服务器。

当你在,你可以使用像这样通过命令行做到这一点:通过去

C:\Windows\Microsoft.NET\Framework\v2.0.50727\installutil /LogToConsole=true C:\Path\To\Service.exe 

然后你就可以对其进行管理(启动它,将它设置为自动启动,停止,重新启动)开始|运行并打字

services.msc 

然后按回车。

卸载它使用:

C:\Windows\Microsoft.NET\Framework\v2.0.50727\installutil /u /LogToConsole=true C:\Path\To\Service.exe 

但是你需要先首先停止该服务。

注意:在更新的.net发行版中可能会有一个新的实用程序 - 我的笔记是在不久前构建2.0服务时使用的。请在C:\Windows\Microsoft.NET\Framework\中查找与您正在开发的.net相匹配的版本号。

+0

我有远程桌面到服务器,是我需要带到远程服务器MyService.exe?当我以后需要更改配置时怎么办?我的服务中有一些应用程序设置。在安装过程中是否会创建一些配置文件? – RuneHansen

+0

谢谢大家的支持,我有远程桌面,所以我只是将文件复制粘贴到远程桌面,并做了类似上面的事情。 http://www.aspdotnet-suresh.com/2011/06/how-to-install-windows-service-using.html – RuneHansen

+0

如果myservice.exe使用第三方库DLL,该怎么办?在远程服务器上安装它们的最佳方式是什么? – Tim

7

使用SC命令。

sc \\remotecomputer create newservice binpath= C:\Windows\System32\Newserv.exe 
    start= auto obj= DOMAIN\username password= pwd 
+1

我尝试将一个命令粘贴到SC.EXE的命令提示符中,但是当我这样做时,它只是消失了,我不知道发生了什么,命令提示符就消失了:( – RuneHansen

+0

@RuneHansen你找到它了吗? – Mukus

+0

你是否在PowerShell中执行此操作,如果是这样,则需要将sc.exe指定为set-content将sc用作别名 –