参数中的Document.Compare ref

时间:2019-03-20 12:36:08

标签: powershell ms-word ms-office

我正在制作一个ps脚本,以通过Powershell触发Word比较。

以下一行:

$document.Compare($ChangedFileName, [ref]"Author", [ref]$wdCompareTargetSelected, [ref]$true, [ref]$true);

在大多数系统上都能正常工作,但是对于具有Office 2013和Windows 8.1的一个客户端,它会抛出错误消息:

  

参数:“ 2”不应为   System.Management.Automation.PSReference。不要使用[ref]。

如果我删除[ref],它将开始在该特定计算机上工作,但在其他计算机上停止工作。

有没有通用的解决方案,如何使其在所有环境中都能正常工作?

1 个答案:

答案 0 :(得分:0)

我发现除第一个参数外的所有参数都是可选的。实际上,这些变量始终设置为默认值,我可以忽略它们并使用以下代码:

$document.Compare($ChangedFileName);

这解决了我在所有环境中的问题。