J'essaie de créer des imprimantes réseau à l'aide d'un script Powershell script. Le script ci-dessous crée le port sans problème, mais ne crée pas la file d'attente. Quelqu'un peut-il confirmer que ce script fonctionne sur Windows Server 2008 ? (Remarque : le pilote doit être installé pour que cela fonctionne).
function CreatePrinterPort {
Param (
[string]$IPAddress
)
$port = [wmiclass]"Win32_TcpIpPrinterPort"
$newPort = $port.CreateInstance()
$newport.Name= "IP_$IPAddress"
$newport.SNMPEnabled=$false
$newport.Protocol=1
$newport.HostAddress= $IPAddress
Write-Host "Creating Port $ipaddress" -foregroundcolor "green"
$newport.Put()
}
function CreatePrinter {
Param (
[string]$PrinterName,
[string]$DriverName,
[string]$IPAddress,
[string]$Location,
[string]$Comment
)
$print = [WMICLASS]"Win32_Printer"
$newprinter = $print.createInstance()
$newprinter.Drivername = $DriverName
$newprinter.PortName = "IP_$IPAddress"
$newprinter.Shared = $true
$newprinter.Sharename = $PrinterName
$newprinter.Location = $Location
$newprinter.Comment = $Comment
$newprinter.DeviceID = $PrinterName
Write-Host "Creating Printer $printername" -foregroundcolor "green"
$newprinter.Put()
}
CreatePrinterPort -IPAddress "Localhost"
CreatePrinter -PrinterName Print1 -DriverName "HP LaserJet 4" -PortName "Localhost"`
-Location "Office" -Comment "Test comment"
L'erreur que j'obtiens se situe au niveau de la fonction CreatePrinter :
Exception lors de l'appel à "Put" avec un ou des arguments "0" : "Échec générique"