PowerShell执行Start-Process报错PositionalParameterNotFound如何解决?
修复PowerShell Start-Process命令报错的方法
错误原因
你的命令错误地将数据库文件路径直接放在了-FilePath参数之后,Start-Process的-FilePath仅用于指定可执行文件路径,额外的启动参数必须统一放到-ArgumentList中,这种写法导致PowerShell无法识别多余的位置参数,从而抛出PositionalParameterNotFound错误。
正确命令写法
方式1:使用数组传递多个参数
将数据库路径和initFile参数作为数组元素传入-ArgumentList:
Start-Process -FilePath "MSACCESS.EXE" -ArgumentList "C:\Test.accdb", 'initFile="C:\myFile.ini"'
方式2:使用单个字符串传递所有参数
将所有启动参数合并为一个字符串,注意路径的引号包裹:
Start-Process -FilePath "MSACCESS.EXE" -ArgumentList '"C:\Test.accdb" initFile="C:\myFile.ini"'
内容的提问来源于stack exchange,提问作者Abi
相关产品推荐
相关产品推荐

