2016-08-03 140 views
1

是否可以远程在服务器上安装Windows服务?我试图做到这一点与SC指令,但给我的错误:在远程服务器上安装Windows服务

sc \\remote_computer_IP create svc binPath="C:\Users\User\Documents\Visual Studio 2015\Projects\svc\svc\bin\Release\svc.exe" start= auto obj= "DOMAIN\usr" password= pass 

[SC] OpenSCManager FAILED 5:

Access is denied.

+0

你是那台机器的管理员吗? – BugFinder

+0

@BugFinder是的,即时管理 –

+0

尝试远程运行sc sc说psexec – BugFinder

回答

0

可以建立使用net use连接,而不是使用PS远程:

net use "\\remote_computer_IP\c$" "[PASSWORD]" /USER:"[USERNAME]" /persistent:no 
sc \\remote_computer_IP create svc binPath="C:\Users\User\Documents\Visual Studio 2015\Projects\svc\svc\bin\Release\svc.exe" start= auto obj= "DOMAIN\usr" password= pass 
net use "\\$ComputerName\c$" /USER:"$Username" /delete 

这是假设你的目标机有位于C服务:\用户\用户。

SC.exe不会将您的svc.exe复制到目标机器上。在我的使用案例中,我将一个Windows服务部署到一个网络服务器场,我的目标是使用MSBuild将我的服务包含在现有的Web部署中。我的解决办法是:

    使用的MSBuild/Web部署(就像VS发布)
  • 部署该服务以相同的方式
    • 我创建了一个Web项目的目标一个专门的网站
    • 部署Web组件到服务,只是为了利用我的MSBuild项目文件的其余部分。
    • 因此,我在c。与我的服务清盘:\的Inetpub \为MyService \ BIN

然后我打电话:

sc create \\remote_computer_IP "MyService" binpath="C:\inetpub\MyService\bin\MyService.exe" 

PowerShell是真棒,但PS远程可以是处理VPN隧道和远程服务器场时很痛苦。

2

是有可能使用PowerShell的话,微软建议做部署和使用PowerShell安装。

[SC] OpenSCManager失败5意味着您没有在提升的命令提示符下运行该命令(即如果您有管理员访问权限)。

这是一个链接,向您展示如何使用powershell将Windows服务部署到远程机器。

http://www.ben-morris.com/deploying-a-windows-service-remotely-with-powershell/