• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 395
  • Last Modified:

XP\ Network printers are not saving when different users login to windows

We are on a domain using AD
The printers are on a windows print server

We have computers on the domain that when different users login, the network printers don't save in the printers list.

This problem began when we migrated  to another domain and roaming profiles were disabled. Now when ever the pc's are logged off and back on, we have to add the network printers all over again.

Any suggestions on why this occurs?
0
dtw404
Asked:
dtw404
  • 3
  • 2
  • 2
  • +1
3 Solutions
 
mevanattaCommented:
Printers are set up under user accounts. When your accounts were "roaming" the printers followed them from computer to computer.  Now when the user logs in they are creating a new profile on each computer in C:\Documents and Settings.
I use mandatory profile in a college open computing lab.  I created a mandatory profile  with the network printers that the students should have access to and put it on the network drive, set up the correct permissions, etc.  Now when they log in they get the profile with the printers.  However, you may not want to use mandatory profiles.  You then could create a "default user" profile.  This profile is saved in Docs and Settings and when the user logs in they would get the default user profile.  
0
 
NetAdmin2436Commented:
I *think* this is your same problem....correct me if i'm wrong.
http://www.experts-exchange.com/Networking/Misc/Q_21959537.html

You will have to either create some printer scripts to add to your login script....or the startup folder. So when a user logs into the computer, the scripts will run and add the printers. Or you could create local TCP/IP printer ports for the machine. Then the printer will save for any user that logs into that particular computer.

Here is my script I use. Copy the text below and save as 'printer.vbs'. Save it on the network in your netlogon folder. Then from your login script, call the printer.vbs script.


arPrt = array("\\Server\Printername1", _
                    "\\Server\Printername2", _
                    "\\Server\Printername3", _
                    "\\Server\Printername4", _
                    "\\Server\Printername5")

Set wshNet = CreateObject("WScript.Network")
Set wshPrn = wshNet.EnumPrinterConnections
For x = 0 To wshPrn.Count - 1 Step 2
    If Left(wshPrn.Item(x+1),2) = "\\" Then wshNet.RemovePrinterConnection wshPrn.Item(x+1),True,True
Next
On Error Resume Next

y = 0

Do until y = 4
           wshNet.AddWindowsPrinterConnection(arPrt(y))
           y = y +1
loop

wshNet.SetDefaultPrinter arPrt(0)
0
 
KromptonCommented:
A script is the best way IMHO. With a script you can load printers based on both user and computer what OU they're in, etc.. That way when a user logs on their default printer (and/or other printers) can be the closest to the machine they are using or whatever you decide to load for them.
0
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
NetAdmin2436Commented:
Oh, i should've warned you. My script will first go through and purge (delete) any network printers, then add the ones specified in the script. I personally like it because it gets rid of any old non-existent printers that users keep around for years. There's other scripts that will just add the printers. If you need one like that, let us know.  
0
 
dtw404Author Commented:

Thanks, both of those are helpful options.

I was able to use the below to resolve this issue after all.

  rundll32 printui.dll,PrintUIEntry /ga /c\\%1 /n\\%2
  start /wait sc \\%1 stop spooler    (stops print spooler)
  start /wait sc \\%1 start spooler    (starts print spooler)
0
 
NetAdmin2436Commented:
Glad you got that figured out and thanks for closing the question with points.
0
 
KromptonCommented:
The printui.dll is very useful.
Don't forget if you change printer names or drivers or move the machine that you will need to reaccomplish this procedure. A script, since you are operating in a domain environ, would update each time a user logs on. That may be worth the effort of putting one together.

Cheers and thanks for the points.
0
 
dtw404Author Commented:

Great! I'll make note of that. Thanks all for the help!
0

Featured Post

Vote for the Most Valuable Expert

It’s time to recognize experts that go above and beyond with helpful solutions and engagement on site. Choose from the top experts in the Hall of Fame or on the right rail of your favorite topic page. Look for the blue “Nominate” button on their profile to vote.

  • 3
  • 2
  • 2
  • +1
Tackle projects and never again get stuck behind a technical roadblock.
Join Now