我正在开发一个pwershell脚本来同步两个打印服务器,一个Win 2k8(很快将是2012)另一个Win 2k12。除了在新的2k12打印服务器上安装打印机的最终for循环外,一切正常。
for循环如下所示:
foreach ($printer in $sourceprinters) {
Add-PrinterPort -name $printer.PortName -PrinterHostAddress $printer.ip
Add-Printer -Name $printer.Name -PortName $Printer.PortName -DriverName $printer.DriverName -Comment $printer.Comment -Shared $printer.Shared -ShareName $printer.ShareName -Location $printer.Location
}
端口添加没有问题,但是在尝试添加打印机时出现以下错误。
添加打印机:无法找到接受的位置参数 论证'真'。在行:63 char:5 + Add-Printer -ComputerName printserver2 -Name $ printer.Name -PortName $ Printe ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo:InvalidArgument :( :) [Add-Printer],ParameterBindingException + FullyQualifiedErrorId:PositionalParameterNotFound,Add-Printer
新的printserver已经安装了所有驱动程序。我尝试添加计算机名称,但没有任何区别,根据我的研究,所有参数都是有效的,并且我验证了传递的值是正确的类型和顺序。
任何有助于解决此问题的帮助将不胜感激。
答案 0 :(得分:2)
-Shared $printer.Shared
这是一个开关,它没有参与。