Solved

printer server migration from server 200

Posted on 2008-10-21
4
309 Views
Last Modified: 2012-08-13
Any suggestions on migrating printers shared from a server running server 2000 to a new server w/server 2003?
0
Comment
Question by:whwoodside
4 Comments
 
LVL 18

Accepted Solution

by:
sk_raja_raja earned 125 total points
ID: 22771571
0
 
LVL 4

Expert Comment

by:Mitch1981
ID: 22771574
0
 
LVL 2

Expert Comment

by:porkchopexpress
ID: 22771610
It's a matter of installing the drivers and creating the queues and ports.  This utility should do the queue/port work for you.

http://www.microsoft.com/WindowsServer2003/techinfo/overview/printmigrator3.1.mspx

If you need something more granular, I have written some vbs stuff that allows you to export the printer config to a .csv, modify anything you want, then import it on another server.  Let me know if the MS utility helps.
0
 
LVL 5

Expert Comment

by:lecaf
ID: 22772074
and this is for the clients to find the new printers

:)

m   a   r   c




'-------------------------------------------------------------------------------
' Script:   	  printmg.vbs
' Ver:		  2.0
' Author: 	  Lecaf
' Support:	  None
' Licence: 	  Free to use at your own risk
' Description:    Migrates printer from one server to an other 
'		  keeps the default printer
'		  deletes not migrated printers
' Compatibility:  WSH 5.6
' Parameters:     none
' Modify:         Server name in 'constants section'
'		  Translation array near the end		
'-------------------------------------------------------------------------------
 
 
 
 
'on error resume next 
 
 
 
'-------------------------------------------------------------------------------
' Constants
'-------------------------------------------------------------------------------
Const NETWORK = 22
strComputer = "."
strServer = "10.0.0.10"
 
'-------------------------------------------------------------------------------
' Object Creation
'-------------------------------------------------------------------------------
Set WshNetwork = WScript.CreateObject("WScript.Network")
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
 
'-------------------------------------------------------------------------------
' Main
'-------------------------------------------------------------------------------
Set colPrinters = objWMIService.ExecQuery("Select * From Win32_Printer")
 
For Each objPrinter in colPrinters
	If objPrinter.Attributes And NETWORK Then
		If LCase(objPrinter.ServerName) = "\\" & LCase(strServer) Then
			
			sOldPrinter = objPrinter.Name
 
			sNewPrinter = TranslatePrinter(sOldPrinter)
 
			If sNewPrinter <> "nada" Then 'if it got translated
 
				WshNetwork.AddWindowsPrinterConnection sNewPrinter 
				If objPrinter.Default Then 'if it was the deafault one restore it
					WshNetwork.SetDefaultPrinter sNewPrinter 
				End If
			End If
			WshNetwork.RemovePrinterConnection sOldPrinter 
		End If
	End If
Next
 
'-------------------------------------------------------------------------------
' Clean up
'-------------------------------------------------------------------------------
Set colPrinters = Nothing
Set objWMIService = Nothing
Set WshNetwork = Nothing
wscript.quit(0)
 
 
Function TranslatePrinter(ByVAl OldPrinter)
'-------------------------------------------------------------------------------
' Description:  Converts a old printer to new Printer according to translation table
' Returns: a printer url or "nada"
'-------------------------------------------------------------------------------
 
Select Case lcase(OldPrinter)
 
'modify from here
case lcase("\\10.0.0.10\AGFA-AccuSet v52.3")		TranslatePrinter="\\telemach\AGFA-AccuSet v52.3"
case lcase("\\prfs005\DJ840C4eF")			TranslatePrinter="\\prfs006\CITI-c"
case lcase("\\prfs005\Fax4eme" )			TranslatePrinter="\\prfs006\CITI-FAX"
case lcase("\\prfs005\Faxination")   	 		TranslatePrinter="\\prfs006\TRIM-FAX"
case lcase("\\prfs005\hp LaserJet 1320 PCL5e" )		TranslatePrinter="\\prfs006\TRIM-2"
case lcase("\\prfs005\HPLaserJet1200" )			TranslatePrinter="\\prfs006\TRIM-3"
case lcase("\\prfs005\hpLJ6p" )				TranslatePrinter="\\prfs006\TRIM-1"
case lcase("\\prfs005\openspls4th" )			TranslatePrinter="\\prfs006\CITI-BW"
' End of modify
Case Else TranslatePrinter= "nada"
 
End select
End function
 
 
 
 
 
 

Open in new window

0

Featured Post

What is SQL Server and how does it work?

The purpose of this paper is to provide you background on SQL Server. It’s your self-study guide for learning fundamentals. It includes both the history of SQL and its technical basics. Concepts and definitions will form the solid foundation of your future DBA expertise.

Question has a verified solution.

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

Scenerio: You have a server running Server 2003 and have applied a retail pack of Terminal Server Licenses.  You want to change servers or your server has crashed and you need to reapply the Terminal Server Licenses. When you enter the 16-digit lic…
Restoring deleted objects in Active Directory has been a standard feature in Active Directory for many years, yet some admins may not know what is available.
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…
Established in 1997, Technology Architects has become one of the most reputable technology solutions companies in the country. TA have been providing businesses with cost effective state-of-the-art solutions and unparalleled service that is designed…

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