Document.Compare 参考参数

Document.Compare ref in parameters

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

下一行:

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

在大多数系统上工作正常,但对于一个使用 Office 2013 和 Windows 8.1 的客户端,它会抛出错误提示:

Argument: '2' should not be a System.Management.Automation.PSReference. Do not use [ref].

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

是否有任何通用的解决方案如何使其在所有环境中工作?

Office 2010 及更低版本

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

$document.Compare($ChangedFileName);

对于 Office 2013 及更高版本

也可以毫无问题地使用其他参数。