可以建立使用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隧道和远程服务器场时很痛苦。
你是那台机器的管理员吗? – BugFinder
@BugFinder是的,即时管理 –
尝试远程运行sc sc说psexec – BugFinder