Solved

Remove printer by command line (script) on several machines

Posted on 2008-06-11
7
7,513 Views
Last Modified: 2011-10-19
Hi,

We are about to phase out a few of our network printers and replace them with new ones.  Currently we can deploy all the new printers to users without problems but the old printers still remain in their printer lists.

How can I make a script to remove ONLY these certain printers from each users PC?

Printer names:
HPPrinter1
HPCopier2

OS:
XP

High points b/c this needs to be done asap
0
Comment
Question by:peshih7
7 Comments
 
LVL 5

Expert Comment

by:pbeirne
ID: 21761640
If they are network printers you can try this in a .vbs file

' Begin Code
Option Explicit
Dim objNetwork, strPrinter1, strPrinter2
strPrinter1 = "\\server\HPPrinter1"
strPrinter2 = "\\server\HPCopier2"

Set objNetwork = CreateObject("WScript.Network")
objNetwork.RemovePrinterConnection strPrinter1
objNetwork.RemovePrinterConnection strPrinter2

Wscript.Quit

0
 

Author Comment

by:peshih7
ID: 21761715
Script worked great.  Are there any permissions issues with this?  Will my users (domain users) be able to run this if I use it as a login script?

Thanks
0
 

Author Comment

by:peshih7
ID: 21761792
Ok so script worked but I ran into this problem.

If any one of the printers is already removed the script throws and error and does not resume to the other printers, how can I make the script continue even on error.

If I can make it so the error doesnt display that would be great too.

Error is attached
Picture-14.png
0
PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

 
LVL 5

Accepted Solution

by:
pbeirne earned 400 total points
ID: 21762305
put the following line at the top of the script:

On Error Resume Next

Let me know if that takes care of your errors.  I've only used scripts to remove one printer or all printers, so to remove a couple of specific printers requires a little tweaking of the script.

I've got another script I am modifying to delete your two specific printers we can try if this one doesn't work.  Let me know.
0
 
LVL 5

Expert Comment

by:pbeirne
ID: 21762548
Here's an alternative script that should handle errors and user rights.  Obviously change the path to your printers for strPrinter1 & 2.

'Begin Script
strComputer = "."
strPrinter1 = "\\server\HPPrinter1"
strPrinter2 = "\\server\HPCopier2"

Set objWMI = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")  
 
Set colPrinters = objWMI.ExecQuery("Select * From Win32_Printer")  
 
For Each objPrinter in colPrinters  
 
on error resume next  
 
If Lcase(objPrinter.name) = Lcase(strPrinter1) Then  
 
Set objNetwork = CreateObject("Wscript.Network")  
 
objNetwork.RemovePrinterConnection strPrinter1  
 
Else  
 
If Lcase(objPrinter.name) = Lcase(strPrinter2) Then  
 
Set objNetwork = CreateObject("Wscript.Network")  
 
objNetwork.RemovePrinterConnection strPrinter2  
 
End If  
 
End If  
 
Next
'End Script
0
 

Expert Comment

by:Exirtis
ID: 23692937
I have found that the following script works great:

RUNDLL32 printui.dll,PrintUIEntry /n \\server\printer.name /dl
0
 

Expert Comment

by:neerjajha
ID: 34902188
I have a remote mahcine and it has a network printer installed. I would to to delete that network printer from that machine. How I can do so remotely?
0

Featured Post

3 Use Cases for Connected Systems

Our Dev teams are like yours. They’re continually cranking out code for new features/bugs fixes, testing, deploying, testing some more, responding to production monitoring events and more. It’s complex. So, we thought you’d like to see what’s working for us.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article is the result of a quest to better understand Task Scheduler 2.0 and all the newer objects available in vbscript in this version over  the limited options we had scripting in Task Scheduler 1.0.  As I started my journey of knowledge I f…
How to remove superseded packages in windows w60 or w61 installation media (.wim) or online system to prevent unnecessary space. w60 means Windows Vista or Windows Server 2008. w61 means Windows 7 or Windows Server 2008 R2. There are various …
Windows 10 is mostly good. However the one thing that annoys me is how many clicks you have to do to dial a VPN connection. You have to go to settings from the start menu, (2 clicks), Network and Internet (1 click), Click VPN (another click) then fi…
With Secure Portal Encryption, the recipient is sent a link to their email address directing them to the email laundry delivery page. From there, the recipient will be required to enter a user name and password to enter the page. Once the recipient …

770 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question