2014-02-14 57 views
3

我正尝试在服务启动时使用参数将远程计算机部署到Windows服务。带有参数的Windows服务部署

我有两个问题:

  1. 如何实际使用Invoke-WmiMethod(PowerShell中)来传递带有参数
  2. 启动Windows Server 2012中有一个参数上的服务的服务

AD1)我发布服务目前是这样的:

Invoke-WmiMethod -class Win32_process -name Create -ArgumentList ("C:\PathToService\ServiceExecutable.exe install") -ComputerName RemoteComputer.local 

这是这样,因为这做的是自行安装/卸载的服务。我试过到目前为止被安装服务这样

$(Get-Service -ComputerName RemoteComputer.local -Name ServiceName) 

后得到的服务对象,但失败了,看我怎么可以附加/修改它的启动参数。

ad2)这个完全让我感到困惑; services dialog

这是一个正常的服务对话框,因为我记得。无论你把什么放入启动参数都应该作为参数传递给服务。

这只是不会发生在我的只有Windows Server 2012!

如果我在Windows 8下运行它 - 一切都很好。

如果我在控制台上运行它 - 一切都很好。

如果我通过服务管理器在Windows Server 2012下运行它 - 日志显示它无法获取参数。

如果我使用不同的帐户(网络,管理员......),没有任何区别。

+0

Web服务? WCF? – Leo

+0

这是一个WCF服务。 – Puhek

+0

不,它不是......它是Windows服务 – Leo

回答

0

我会建议使用本地app.config来代替。

通过这种方式,您可以指定所需的全部配置,而无需使用启动参数。