我正在使用pwershell脚本来同步两台打印服务器,一台Win 2k8(即将成为2012)和另一台Win 2k12。除了用于在新的2k12打印服务器上安装打印机的final循环之外,一切都可以正常工作。Powershell:将打印机添加到打印服务器
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
}
端口被添加但是没有问题,尝试添加打印机时,我得到了下面的错误。
Add-Printer:找不到位置参数,接受 参数'True'。在行:63字符:5 +添加打印机-ComputerName printserver2 - 命名$ printer.Name - 端口名称$ Printe ... + ~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~ + CategoryInfo:InvalidArgument:(:) [添加打印机],ParameterBindingException + FullyQualifiedErrorId:PositionalParameterNotFound,添加打印机
新的打印服务器已经拥有的所有驱动程序安装。我尝试添加计算机名称,但没有任何区别,根据我的研究,所有参数都是有效的,并验证了传递的值是正确的类型和顺序。
任何帮助解决这个问题将不胜感激。
在添加'$ sourceprinters'之前检查$ sourceprinters的内容'$ sourceprinters |选择* | out-gridview'? – LotPings