Windows服务更新exe选项,无需删除/重新安装

时间:2016-08-22 08:50:11

标签: powershell command-line windows-services powershell-v4.0

我已经安装了一个Windows服务,并且可以通过exe的路径正常工作:

  

c:\ myproject \ mybinary.exe -home d:\ home - generateFiles false

我想添加其他选项:-option optionValue

由于我有大约200种不同的服务,安装在15个不同的服务器中,因此使用新选项卸载并重新安装是很复杂的。

是否有某种方式添加新选项而不对服务二进制文件进行任何更改?

1 个答案:

答案 0 :(得分:0)

的PowerShell:

Get-WmiObject win32_service -filter "Name='My Service'" `
    | Invoke-WmiMethod -Name Change `
    -ArgumentList @($null,$null,$null,$null,$null, `
    "c:\myproject\mybinary.exe -home d:\home -generateFiles false -option optionValue")

或者:

Set-ItemProperty -Path "HKLM:\System\CurrentControlSet\Services\My Service" `
    -Name ImagePath -Value "c:\myproject\mybinary.exe -home d:\home -generateFiles false -option optionValue"

之后您需要重新启动服务:Restart-Service "My Service"。另请参阅here