adding printer without admin right in XP

My question is about enabling a normal user to add a local printer. In a corporate environment, we have laptop users that may use different printers outside the company, and we don't want to give them the admin password or the power user password(while enabling the load/unload devices option in the local sec. policy).
The "run as" option is also not suitable for this situation, i think.
Who is Participating?
LongbowConnect With a Mentor Commented:
No no.
Psexec run like the RunAs command.
The user doubli-click a shortcut and psexec executes your Rundll command with the account you want.
You need to choose the Rundll32 you want to run.

'Beginning of VbScript
'Save in a .vbs file
'Add the paths where needed:
Set WshShell = WScript.CreateObject("WScript.Shell")
Command = "psexec -u Domain\Admin -p password " & CHR(34) & "rundll32.exe" & CHR(34) & "syntax"
msgbox Command
WshShell.Run Command, 1, false
'End of VbScript

The VB Script can be encoded.
Or create a user for the occasion.
Open user accounts in the control panel and assign the user as an Administrator on the local machine. (Not the domain)
tmogulkocAuthor Commented:
Whether local or domain, we don't want any user to be admin on their computers.
Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

If you don't want to give them full admin rights, there is another way:  Make them a member of the Power Users group and have the Load/Unload Device Drivers privilege, which is a Group Policy setting.

To set this privilege, click Computer Configuration, click Windows Settings, click Security Settings, click Local Policies, and then click User Rights Assignment. By default, only administrators have this privilege. Power Users can obtain the same level of privilege to install or modify a local printer as they had under Microsoft Windows 2000 if the administrator explicitly grants this privilege to them.

Of course, giving them admin rights would be simpler.  Good luck.
tmogulkocAuthor Commented:
Thanks but as i said in my question, also we don't want them to be power users (while giving them Load/unload device drivers privilege), we don't want them to install or run any external software.
Oh, yeah... I guess you did say that.  Sorry.

Hate to be the bearer of bad tidings, but in my experience (both corporate IT and contract work), what you are describing cannot be done.

See these two knowledge-base articles from Microsoft:;en-us;297780;en-us;326473

"For security reasons, Windows XP cannot permit a user who is not an administrator to install a device on the computer....."
tmogulkocAuthor Commented:
But there should be an option (such as customizing the administrative group policy template) to do that. Because all the settings can be reached through registry.
Install a printer using rundll32.exe :

You van use psexec to execute this command with admin rights :
Pstools Suite found at
tmogulkocAuthor Commented:
Great, i know about using the option to add printer using rundll32.exe  but i want the user himsel add the printer. Thanks
Hmmmm... sounds like the easiest way to be able to do this is to make him an administrator on the PC, let him add the printer and then take him out of the administrator group
tmogulkocAuthor Commented:
Psexec seems to be an alternative, but if possible i would like to learn where in the registry this is set and to which folders write access is necessary.
LongbowConnect With a Mentor Commented:
You can use Sysdiff. It is in the Resource Kit.
Addendum :
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.