Printers beheren via de opdrachtprompt in Windows

Als je ooit printerbeheertaken hebt moeten uitvoeren zonder de grafische gebruikersinterface (GUI) te gebruiken – bijvoorbeeld printers implementeren in een netwerk via scripts of het automatiseren van driverinstallaties – dan kunnen deze commandoregeltrucs je redden. Printers beheren met scripts kan in het begin wat lastig zijn, vooral omdat Windows verschillende ingebouwde scripts en tools heeft die het zware werk op de achtergrond doen. Maar eerlijk gezegd, als je het eenmaal door hebt, is het best bevredigend om dingen sneller te doen dan door in de menu’s Instellingen of Apparaten te klikken. Bovendien is het ideaal voor scripts in SCCM, aanmeldscripts of zelfs taken op externe servers. Kortom: Windows biedt een verzameling VBS-scripts in `C:\Windows\System32\Printing_Admin_Scripts\en-US` (of een gelokaliseerde map, afhankelijk van je taal).Met deze scripts kun je drivers installeren, printers toevoegen of verwijderen, poorten maken, wachtrijen beheren en zelfs printers delen zonder ooit de GUI te openen. Het is een beetje een verborgen pareltje, maar als je weet welke commando’s je moet uitvoeren, maakt het de massale uitrol van printers en het oplossen van problemen een stuk eenvoudiger – soms zelfs sneller dan wachten tot Windows het heeft bijgewerkt. Let wel: op oudere systemen zoals XP of Windows Server 2003 staan ​​de scripts in `C:\WINDOWS\system32` en zijn de commando’s vrijwel hetzelfde. Want Windows moet het natuurlijk altijd ingewikkelder maken dan nodig is.

Hoe u printerbeheer via de opdrachtregel in Windows kunt herstellen

Hoe installeer je een printerstuurprogramma via de opdrachtregel?

Soms is een nieuwe installatie van de driver nodig, vooral bij het instellen van nieuwe printers of het批量 bijwerken van drivers. Dit komt vaak voor in bedrijfsomgevingen waar handmatige installatie via de grafische gebruikersinterface niet praktisch is. De opdracht gebruikt `prndrvr.vbs` met de schakelaar `-a`, waarmee wordt aangegeven dat er een driver moet worden toegevoegd. Bijvoorbeeld:

cscript "C:\Windows\System32\Printing_Admin_Scripts\en-US\prndrvr.vbs" -a -m "HP Universal Printing PCL 6" -i "C:\drv\HP Universal Print Driver\hpcu160u.inf"

De opdracht is als volgt opgebouwd: -a staat voor toevoegen, -m specificeert de naam van het stuurprogramma (deze moet overeenkomen met het gewenste stuurprogramma, zoals het universele printerstuurprogramma) en -i verwijst naar het exacte INF-bestand met de stuurprogramma-informatie. Dit is logisch: je vertelt Windows precies waar het stuurprogramma te vinden is en wat ermee moet gebeuren. In sommige gevallen kan het voorkomen dat een incompatibel of beschadigd stuurprogramma niet geïnstalleerd kan worden, maar soms helpt het om de opdracht na een herstart of na het bijwerken van het INF-pad opnieuw uit te voeren. Meestal verschijnt het stuurprogramma daarna in de Eigenschappen van de printerserver (via Configuratiescherm > Apparaten en printers > Eigenschappen van de printerserver).

Een nieuwe printer toevoegen via de opdrachtprompt

Zodra het stuurprogramma is geïnstalleerd, is het toevoegen van de printer zelf vrij eenvoudig. De opdracht gebruikt `prnmngr.vbs` opnieuw met `-a`, maar dit keer om de printer aan te maken. Voorbeeld:

cscript "C:\Windows\System32\Printing_Admin_Scripts\en-US\prnmngr.vbs" -a -p "HP5525" -m "HP Universal Printing PCL 6" -r "LPT1:"

Hiermee wordt een nieuwe lokale printer met de naam “HP5525” geïnstalleerd, inclusief het bijbehorende stuurprogramma, en gekoppeld aan een poort, bijvoorbeeld LPT1. U kunt dit wijzigen naar USB-poorten (USB001) of seriële poorten (COM1:).Houd er rekening mee dat de poortnamen moeten overeenkomen met die op uw computer. Als u een poort opgeeft die niet beschikbaar is, zal het script mislukken of niets doen. Controleer de poorten in Apparaten en printers voordat u deze opdrachten uitvoert.

De standaardprinter instellen via de opdrachtregel

Soms ontstaan ​​problemen wanneer Windows vergeet welke printer je eigenlijk wilt gebruiken. Je kunt alle printers weergeven met:

cscript "C:\Windows\System32\Printing_Admin_Scripts\en-US\prnmngr.vbs" -l

En om te zien wat je huidige standaardinstelling is:

cscript "C:\Windows\System32\Printing_Admin_Scripts\en-US\prnmngr.vbs" -g

Om de standaardinstelling te wijzigen, voert u het volgende commando uit:

cscript "C:\Windows\System32\Printing_Admin_Scripts\en-US\prnmngr.vbs" -t -p "HP5525"

Hiermee wordt uw standaardprinter vervangen zonder dat u de instellingen hoeft te openen. Bij sommige systemen schakelt Windows niet altijd direct over, waardoor een herstart of afmelden mogelijk nodig is om de wijziging volledig door te voeren. Geloof me, ik en een aantal systeembeheerders hebben dat al meer dan eens moeten doen.

Maak een TCP/IP-poort aan voor een netwerkprinter.

Verbinding maken met een netwerkprinter bestaat uit twee stappen: een poort aanmaken en vervolgens de printer toevoegen. Eerst moet u een TCP/IP-poort instellen — stel dat het IP-adres van de printer 192.168.1.22 is. De opdracht ziet er als volgt uit:

cscript "C:\Windows\System32\Printing_Admin_Scripts\en-US\Prnport.vbs" -a -r IP_192.168.1.22 -h 192.168.1.22 -o raw -n 9100

Hier is -r de poortnaam, die u naar wens kunt labelen, -h is het IP-adres, -o raw stelt het protocol in (raw socket) en -n 9100 is over het algemeen de standaardpoort. Zodra de poort is aangemaakt, kunt u de printer toevoegen met:

cscript "C:\Windows\System32\Printing_Admin_Scripts\en-US\prnmngr.vbs" -a -p "HP5525" -m "HP Universal Printing PCL 6" -r "IP_192.168.1.22"

Dit voegt automatisch de netwerkprinter toe die naar dat IP-adres verwijst en maakt deze beschikbaar op uw systeem. Soms loopt het script vast of geeft het fouten weer als de IP- of poortinstellingen onjuist zijn. Controleer daarom het IP-adres en het poortnummer goed.

Een testpagina afdrukken vanaf de opdrachtregel

Wil je controleren of alles werkt? Het onderstaande script start een testafdruk op de door jou opgegeven printer:

cscript "C:\Windows\System32\Printing_Admin_Scripts\en-US\prnqctl.vbs” -e -p "HP5525"

Het is een beetje vreemd, maar het werkt meestal wel. Je hoeft niet naar de printerinstellingen te gaan; er wordt gewoon een diagnostische pagina afgedrukt om te bevestigen dat de installatie in orde is. Bij sommige configuraties, vooral met netwerkprinters of aangepaste instellingen, werkt het misschien niet meteen, maar het is in ieder geval een begin.

Printwachtrijen beheren: taken bekijken, wissen en annuleren.

Als je vastloopt met printopdrachten of gewoon even snel wilt kijken, bieden de scripts commando’s om de wachtrijen te bekijken en leeg te maken. Om alle printopdrachten op alle lokale printers weer te geven:

cscript "C:\Windows\System32\Printing_Admin_Scripts\en-US\prnjobs.vbs" -l

Om de opdrachten op een specifieke printer te bekijken:

cscript "C:\Windows\System32\Printing_Admin_Scripts\en-US\prnjobs.vbs" -l -p "HP5525"

En hoe leeg je de printwachtrij? Met dit commando kun je dat doen, maar wees voorzichtig: het verwijdert alle printopdrachten in de wachtrij.

cscript "C:\Windows\System32\Printing_Admin_Scripts\en-US\prnjobs.vbs" -x -p "HP5525"

Voor een brute-force-methode om alle wachtrijen op alle printers te wissen:

cscript "C:\Windows\System32\Printing_Admin_Scripts\en-US\prnjobs.vbs" -x

Let op: Soms werken deze scripts mogelijk niet als de printer te lang printopdrachten heeft staan ​​of als er problemen zijn met de machtigingen, maar over het algemeen doen ze wat ze moeten doen.

Een printer delen via het netwerk met behulp van de opdrachtregel

Printers delen kan ook via de commandoregel. Om een ​​bestaande printer met een speciale naam te delen, voert u het volgende commando uit:

cscript "C:\Windows\System32\Printing_Admin_Scripts\en-US\prncnfg.vbs" -t -p "HP5525" -h "HP5525_Shared" +shared

En om het delen uit te schakelen:

cscript "C:\Windows\System32\Printing_Admin_Scripts\en-US\prncnfg.vbs" -t -p "HP5525" -shared

Als u de printer in Active Directory wilt publiceren, voegt u de vlag +published toe:

cscript "C:\Windows\System32\Printing_Admin_Scripts\en-US\prncnfg.vbs" -t -p "HP5525" +published

In principe kun je scripts voor het delen en publiceren gebruiken om netwerkbrede implementaties te automatiseren.

Een netwerkprinter toevoegen via de opdrachtregel

Om verbinding te maken met een gedeelde printer op een andere computer, zoals \\rome-prnt01\hp2100, voert u het volgende commando uit:

cscript "C:\Windows\System32\Printing_Admin_Scripts\en-US\prnmngr.vbs" -ac -p "\\rome-prnt01\hp2100"

Let op veelvoorkomende fouten (0x00000002, 0x00000057, 0x0000007e), die verschijnen als de naam van de gedeelde map onjuist is of als er netwerkproblemen zijn. Meestal lost het controleren van het pad naar de gedeelde map en de machtigingen dit op.

Verwijder de printer en het stuurprogramma via de opdrachtregel.

Als een printer niet meer werkt of als je gewoon even wilt opruimen, kun je eerst alle geïnstalleerde printers weergeven:

cscript "C:\Windows\System32\Printing_Admin_Scripts\en-US\prnmngr.vbs" -l

En verwijder een specifieke printer met:

cscript "C:\Windows\System32\Printing_Admin_Scripts\en-US\prnmngr.vbs" -d -p "HP5525"

Om het stuurprogramma zelf te verwijderen, voert u het volgende commando uit:

cscript "C:\Windows\System32\Printing_Admin_Scripts\en-US\prndrvr.vbs" -d -m "HP Universal Printing PCL 6" -e "Windows x64" -v 3

Dit is handig als je stuurprogramma’s vervangt of oude bestanden verwijdert. Op sommige computers kunnen er na het verwijderen van stuurprogramma’s restbestanden achterblijven, maar in de meeste gevallen doet dit programma wat het moet doen.

Samenvatting

Dat is in het kort de kern van de zaak: deze scripts zijn misschien niet de meest fraaie tools, maar ze kunnen een redder in nood zijn bij het automatiseren van printerinstallaties, het oplossen van problemen of het in bulk uitrollen van printers – vooral wanneer een grafische gebruikersinterface (GUI) geen optie is. Het is belangrijk om te onthouden dat deze scripts gevoelig zijn voor syntax en parameters, dus een beetje experimenteren kan soms helpen. Maar als ze eenmaal werken, is het erg prettig om een ​​hele reeks printers te beheren met simpele commando’s in plaats van door menu’s te moeten navigeren.

Samenvatting

  • Gebruik ` prndrvr.vbs` om stuurprogramma’s te installeren
  • Voeg printers toe met ` prnmngr.vbs`
  • Maak TCP/IP-poorten aan met behulp van ` Prnport.vbs`
  • Beheer wachtrijen en taken met ` prnjobs.vbs`
  • Netwerkprinters delen en verbinden via ` prncnfg.vbs` en `prnmngr.vbs
  • Verwijder printers en stuurprogramma’s indien nodig.

Tot slot

De meeste van deze commando’s zijn wat ouderwets, maar ze werken wel – en in sommige omgevingen zijn het zelfs de enige opties. Experimenteer er gerust mee en wees niet bang om commando’s aan te passen en te combineren voor jouw specifieke situatie. Ik hoop dat dit het gedoe vermindert – het werkte voor mij, dus hopelijk bespaart het iemand anders ook een hoop tijd.