SC创建Binpath错误

时间:2018-06-27 11:54:16

标签: windows service

我正在尝试在PowerShell中运行以下命令

sc create StrongSwan binpath= "C:\Users\Kanishk\Desktop\Strong\Strong\stronswan\strongswan-5.6.3\src\charon-svc\charon-svc.exe"

我已经检查了.exe的路径是否正确,我也可以对其进行cd安装。 供参考,我在此关注:https://wiki.strongswan.org/projects/strongswan/wiki/Charon-svc

我收到以下错误:

Set-Content : A positional parameter cannot be found that accepts argument 'binpath='.
At line:1 char:1
+ sc create NewService binpath= C:\Users\Kanishk\Desktop\Strong\Strong\ ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo          : InvalidArgument: (:) [Set-Content], ParameterBindingException
+ FullyQualifiedErrorId : PositionalParameterNotFound,Microsoft.PowerShell.Commands.SetContentCommand

所以我的问题是,同一命令在cmd上有效,但在PowerShell上却无效。有什么原因吗?

2 个答案:

答案 0 :(得分:4)

我也用 Powershell 遇到过这个问题。

扩展答案:

"sc" 是 Powershell 中 "Set-Content" 的别名,它在您的输出和 Powershell "Get-Alias" 命令中得到确认。这就是 sc 失败但 sc.exe 成功的原因,以及 sc 在 cmd 中工作而在 powershell 中失败的原因。

答案 1 :(得分:3)

我也遇到了这个。看起来错误发生在第1行char:1。因此,我认为它不理解什么是“ sc”。因此,我将sc create ..更改为sc.exe create ..,它对我的​​服务有用。