<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>blog.powershell.no &#187; Print management</title>
	<atom:link href="http://blog.powershell.no/category/print-management/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.powershell.no</link>
	<description>On Windows PowerShell and other admin-related topics</description>
	<lastBuildDate>Mon, 26 Jul 2010 13:44:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='blog.powershell.no' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://www.gravatar.com/blavatar/e22e511529c14fbc92cde5589d6231b4?s=96&#038;d=http://s2.wp.com/i/buttonw-com.png</url>
		<title>blog.powershell.no &#187; Print management</title>
		<link>http://blog.powershell.no</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://blog.powershell.no/osd.xml" title="blog.powershell.no" />
	<atom:link rel='hub' href='http://blog.powershell.no/?pushpress=hub'/>
		<item>
		<title>Automate Group Policy Preferences printer-management using Windows PowerShell</title>
		<link>http://blog.powershell.no/2010/01/18/automate-group-policy-preferences-printer-management-using-windows-powershell-2/</link>
		<comments>http://blog.powershell.no/2010/01/18/automate-group-policy-preferences-printer-management-using-windows-powershell-2/#comments</comments>
		<pubDate>Mon, 18 Jan 2010 13:44:32 +0000</pubDate>
		<dc:creator>Jan Egil Ring</dc:creator>
				<category><![CDATA[Active Directory management]]></category>
		<category><![CDATA[Deployment]]></category>
		<category><![CDATA[Group Policy]]></category>
		<category><![CDATA[Print management]]></category>
		<category><![CDATA[Scripting]]></category>
		<category><![CDATA[Windows PowerShell]]></category>

		<guid isPermaLink="false">http://janegilring.wordpress.com/2010/01/18/automate-group-policy-preferences-printer-management-using-windows-powershell-2/</guid>
		<description><![CDATA[I`ve written a couple of blog posts earlier on Group Policy Preferences and printer deployment using Group Policy. Using Group Policy Preferences is a very flexible way to deploy printer connections. This is also very manageable in smaller environments. What if you got hundreds, or even thousands of printer connections you need to deploy? Do [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.powershell.no&blog=5892504&post=378&subd=janegilring&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p>I`ve written a couple of blog posts earlier on <a href="http://blog.powershell.no/2009/03/20/group-policy-preferences">Group Policy Preferences</a> and <a href="http://blog.powershell.no/2009/11/08/deploying-printers-using-group-policy/">printer deployment using Group Policy</a>.</p>
<p>Using Group Policy Preferences is a very flexible way to deploy printer connections. This is also very manageable in smaller environments. What if you got hundreds, or even thousands of printer connections you need to deploy? Do you want to sit down and make several thousands of mouse clicks to accomplish the task? There are better alternatives!</p>
<p>Based on SDM Software`s <a href="http://www.sdmsoftware.com/group_policy_scripting.php">Group Policy Automation Engine</a>, I`ve created a script module to handle this. The script module are available from <a href="http://gallery.technet.microsoft.com/ScriptCenter/en-us/df4eae77-c8a9-40f9-b2eb-a7ed9ef7cd2a">this link</a>.</p>
<p>Save the script module as a psm1-file in the following directory: %userprofile%\Documents\WindowsPowerShell\Modules\GPPreferencesPrinters    <br />You need to manually create the 3 subfolders under %userprofile%\Documents if they doesn`t exist.</p>
<p>When done, start Windows PowerShell and type the following command:</p>
<p><a href="http://janegilring.files.wordpress.com/2010/01/image9.png"><img style="display:inline;border-width:0;" title="image" border="0" alt="image" src="http://janegilring.files.wordpress.com/2010/01/image_thumb9.png?w=244&#038;h=95" width="244" height="95" /></a> </p>
<p>You should now see the GPPreferencesPrinters module.    <br />Import the module with the Import-Module cmdlet:</p>
<p><a href="http://janegilring.files.wordpress.com/2010/01/image10.png"><img style="display:inline;border-width:0;" title="image" border="0" alt="image" src="http://janegilring.files.wordpress.com/2010/01/image_thumb10.png?w=644&#038;h=75" width="644" height="75" /></a> </p>
<p>As you can see there are two functions in addition to SDM Software`s cmdlet: Add-GPPreferencesPrinter and Get-GPPreferencesPrinter.</p>
<p>Example 1:</p>
<p><a href="http://janegilring.files.wordpress.com/2010/01/image11.png"><img style="display:inline;border-width:0;" title="image" border="0" alt="image" src="http://janegilring.files.wordpress.com/2010/01/image_thumb11.png?w=644&#038;h=93" width="644" height="93" /></a> </p>
<p>Example 2:</p>
<p>If you got the printers listed in an Excel spreadsheet, save the document in csv-format:</p>
<p><a href="http://janegilring.files.wordpress.com/2010/01/image12.png"><img style="display:inline;border-width:0;" title="image" border="0" alt="image" src="http://janegilring.files.wordpress.com/2010/01/image_thumb12.png?w=244&#038;h=58" width="244" height="58" /></a> </p>
<p>The csv-file may be used like this to import the printer connections:</p>
<p><a href="http://janegilring.files.wordpress.com/2010/01/image13.png"><img style="display:inline;border-width:0;" title="image" border="0" alt="image" src="http://janegilring.files.wordpress.com/2010/01/image_thumb13.png?w=644&#038;h=38" width="644" height="38" /></a> </p>
<p><a href="http://janegilring.files.wordpress.com/2010/01/image14.png"><img style="display:inline;border-width:0;" title="image" border="0" alt="image" src="http://janegilring.files.wordpress.com/2010/01/image_thumb14.png?w=244&#038;h=107" width="244" height="107" /></a> </p>
<p>Additional functions and parameters will later be added to the script module, i.e. Remove-GPPreferencesPrinter and Item-Level Targeting. Note that example usage for Item-Level Targeting are provided in the Group Policy Automation Engine User Manual.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/janegilring.wordpress.com/378/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/janegilring.wordpress.com/378/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/janegilring.wordpress.com/378/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/janegilring.wordpress.com/378/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/janegilring.wordpress.com/378/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/janegilring.wordpress.com/378/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/janegilring.wordpress.com/378/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/janegilring.wordpress.com/378/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/janegilring.wordpress.com/378/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/janegilring.wordpress.com/378/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.powershell.no&blog=5892504&post=378&subd=janegilring&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://blog.powershell.no/2010/01/18/automate-group-policy-preferences-printer-management-using-windows-powershell-2/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/ed08d635415486b87539a6e5a81982b7?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">janegilring</media:title>
		</media:content>

		<media:content url="http://janegilring.files.wordpress.com/2010/01/image_thumb9.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://janegilring.files.wordpress.com/2010/01/image_thumb10.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://janegilring.files.wordpress.com/2010/01/image_thumb11.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://janegilring.files.wordpress.com/2010/01/image_thumb12.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://janegilring.files.wordpress.com/2010/01/image_thumb13.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://janegilring.files.wordpress.com/2010/01/image_thumb14.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>
	</item>
		<item>
		<title>Mapping printers based on Active Directory group membership using Windows PowerShell</title>
		<link>http://blog.powershell.no/2009/11/28/mapping-printers-based-on-active-directory-group-membership-using-windows-powershell/</link>
		<comments>http://blog.powershell.no/2009/11/28/mapping-printers-based-on-active-directory-group-membership-using-windows-powershell/#comments</comments>
		<pubDate>Sat, 28 Nov 2009 01:08:56 +0000</pubDate>
		<dc:creator>Jan Egil Ring</dc:creator>
				<category><![CDATA[Deployment]]></category>
		<category><![CDATA[Print management]]></category>
		<category><![CDATA[Scripting]]></category>
		<category><![CDATA[Windows PowerShell]]></category>

		<guid isPermaLink="false">http://janegilring.wordpress.com/2009/11/28/mapping-printers-based-on-active-directory-group-membership-using-windows-powershell/</guid>
		<description><![CDATA[While researching for a logon script setup for mapping network printers using Windows PowerShell, I thought of using the Windows native tool printui.dll for the actual printer mappings. However, I was`nt quite sure how to check for a users` group membership in Active Directory. This sure can be accomplished with a tool like Quest`s PowerShell [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.powershell.no&blog=5892504&post=325&subd=janegilring&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p>While researching for a logon script setup for mapping network printers using Windows PowerShell, I thought of using the Windows native tool <a href="http://support.microsoft.com/kb/189105">printui.dll</a> for the actual printer mappings.<br />
However, I was`nt quite sure how to check for a users` group membership in Active Directory. This sure can be accomplished with a tool like Quest`s <a href="http://www.quest.com/powershell/activeroles-server.aspx">PowerShell Commands for Active Directory</a>. However, installing this on every domain computer wasn`t an option.<br />
Then I found <a href="http://www.telnetport25.com/component/content/article/15-powershell/127-quick-tip-determining-group-ad-membership-using-powershell.html">Andy Grogan`s PowerShell function for determining AD group membership</a>.</p>
<p>Based on this function, and the printui.dll the task was easy to accomplish. I`ve published a sample script to <a href="http://poshcode.org/">PoshCode.org</a>, available from <a href="http://poshcode.org/1494">here</a>.</p>
<p>You may also want to check out &#8220;<a href="http://download.microsoft.com/download/8/2/c/82cffcfa-56f6-4fc3-bfa5-80cd84793871/PrintUIUsersGuide.doc">PrintUI.DLL User&#8217;s Guide and Reference</a>&#8220;.</p>
<p>Tested with Windows PowerShell v 1.0/2.0 and Windows XP/Vista/7.</p>
<p>As an alternative, you may also want to check out <a href="http://blog.powershell.no/2009/11/08/deploying-printers-using-group-policy/">this</a> blog post on mapping printers using Group Policy.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/janegilring.wordpress.com/325/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/janegilring.wordpress.com/325/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/janegilring.wordpress.com/325/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/janegilring.wordpress.com/325/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/janegilring.wordpress.com/325/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/janegilring.wordpress.com/325/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/janegilring.wordpress.com/325/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/janegilring.wordpress.com/325/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/janegilring.wordpress.com/325/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/janegilring.wordpress.com/325/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.powershell.no&blog=5892504&post=325&subd=janegilring&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://blog.powershell.no/2009/11/28/mapping-printers-based-on-active-directory-group-membership-using-windows-powershell/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/ed08d635415486b87539a6e5a81982b7?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">janegilring</media:title>
		</media:content>
	</item>
		<item>
		<title>Deploying printers using Group Policy</title>
		<link>http://blog.powershell.no/2009/11/08/deploying-printers-using-group-policy/</link>
		<comments>http://blog.powershell.no/2009/11/08/deploying-printers-using-group-policy/#comments</comments>
		<pubDate>Sun, 08 Nov 2009 18:38:52 +0000</pubDate>
		<dc:creator>Jan Egil Ring</dc:creator>
				<category><![CDATA[Deployment]]></category>
		<category><![CDATA[Group Policy]]></category>
		<category><![CDATA[Print management]]></category>
		<category><![CDATA[Windows Server 2003 R2]]></category>
		<category><![CDATA[Windows Server 2008]]></category>
		<category><![CDATA[Windows Server 2008 R2]]></category>

		<guid isPermaLink="false">http://janegilring.wordpress.com/2009/11/08/deploying-printers-using-group-policy/</guid>
		<description><![CDATA[Traditionally printer connections have been deployed to users with scripting, like batch (net use) and Kixtart (AddPrinterConnection). I would now like to show how printer connections can be deployed using Group Policy. Today we have 2 possible solutions for natively deploy printers using Group Policy without the need for any scripting: 1) Group Policy Preferences [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.powershell.no&blog=5892504&post=314&subd=janegilring&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p>Traditionally printer connections have been deployed to users with scripting, like batch (net use) and Kixtart (AddPrinterConnection).</p>
<p>I would now like to show how printer connections can be deployed using Group Policy. Today we have 2 possible solutions for natively deploy printers using Group Policy without the need for any scripting:</p>
<p>1) Group Policy Preferences – available in Windows Server 2008 and later</p>
<p>2) Print Management – available in Windows Server 2003 R2 and later</p>
<p>Using Group Policy Preferences to deploy printers are described in an earlier blog post, available <a href="http://blog.powershell.no/2009/03/20/group-policy-preferences/" target="_blank">here</a>. Therefore, I won`t explain any further details regarding this.</p>
<p>I will focus on the Print Management which has a powerful “Deploy with Group Policy” feature.</p>
<p><span style="font-size:large;">Configure printer deployment on </span></p>
<p><span style="font-size:large;">print servers</span></p>
<p>To use the “Deploy with Group Policy” feature, you need to install the “Print Management Component” feature from “Add/Remove Windows Components” in Windows Server 2003 R2. In Windows Server 2008/2008 R2 you need to install the “Print Server”-role from the “Add Roles Wizard”.</p>
<p>When installed, you`ll find “Print Management” under “Administrative tools” on the Start menu:</p>
<p><a href="http://janegilring.files.wordpress.com/2009/11/image1.png"><img style="display:inline;border-width:0;" title="image" src="http://janegilring.files.wordpress.com/2009/11/image_thumb1.png?w=122&#038;h=23" border="0" alt="image" width="122" height="23" /></a></p>
<p>The following screenshots are taken from Windows Server 2008 R2.</p>
<p>When you open the Print Management Console you will see an overview of Custom Filters, Print Server and Deployed Printers:</p>
<p><a href="http://janegilring.files.wordpress.com/2009/11/image2.png"><img style="display:inline;border-width:0;" title="image" src="http://janegilring.files.wordpress.com/2009/11/image_thumb2.png?w=135&#038;h=184" border="0" alt="image" width="135" height="184" /></a></p>
<p>You may add additional filters and print servers to the console, which you can read more about in the links in the bottom of this post. For now, we`ll focus on the printer deployment part.</p>
<p>Right-click the printer you want to deploy, and select “Deploy with Group Policy”:</p>
<p><a href="http://janegilring.files.wordpress.com/2009/11/image3.png"><img style="display:inline;border-width:0;" title="image" src="http://janegilring.files.wordpress.com/2009/11/image_thumb3.png?w=290&#038;h=139" border="0" alt="image" width="290" height="139" /></a></p>
<p>Select “Browse” to choose a Group Policy Object where the printer connection will be deployed. Select “per user” and/or “per machine” and press “Add”. Then click “OK”:</p>
<p><a href="http://janegilring.files.wordpress.com/2009/11/image4.png"><img style="display:inline;border-width:0;" title="image" src="http://janegilring.files.wordpress.com/2009/11/image_thumb4.png?w=426&#038;h=255" border="0" alt="image" width="426" height="255" /></a></p>
<p>You should now receive a message stating that the deployment operation was successful. Click “OK”:</p>
<p><a href="http://janegilring.files.wordpress.com/2009/11/image5.png"><img style="display:inline;border-width:0;" title="image" src="http://janegilring.files.wordpress.com/2009/11/image_thumb5.png?w=244&#038;h=187" border="0" alt="image" width="244" height="187" /></a> </p>
<p>The printer will now be deployed to client computers.</p>
<p><span style="font-size:large;"> </span></p>
<p><span style="font-size:large;">Behind the scenes</span></p>
<p>To understand how the print deployment feature works, we`ll activate the “Advanced Features” option on the “View”-menu in “Active Directory Users and Computers”:</p>
<p><a href="http://janegilring.files.wordpress.com/2009/11/image6.png"><img style="display:inline;border-width:0;" title="image" src="http://janegilring.files.wordpress.com/2009/11/image_thumb6.png?w=244&#038;h=129" border="0" alt="image" width="244" height="129" /></a></p>
<p>Open the “Group Policy Management Console”, go to the Group Policy Object you deployed the printer to, and select “Details”:</p>
<p><a href="http://janegilring.files.wordpress.com/2009/11/image7.png"><img style="display:inline;border-width:0;" title="image" src="http://janegilring.files.wordpress.com/2009/11/image_thumb7.png?w=244&#038;h=204" border="0" alt="image" width="244" height="204" /></a></p>
<p>Note the “Unique ID” (GUID).</p>
<p>Back in ADUC, expand “System” and then “Policies”:</p>
<p><a href="http://janegilring.files.wordpress.com/2009/11/image8.png"><img style="display:inline;border-width:0;" title="image" src="http://janegilring.files.wordpress.com/2009/11/image_thumb8.png?w=194&#038;h=324" border="0" alt="image" width="194" height="324" /></a></p>
<p>This is where the actual Group Policy Objects in Active Directory are stored, in addition to <a href="//\\domain.local\sysvol\policies">\\domain.local\sysvol\policies</a>.</p>
<p>Find and expand the Group Policy Object you deployed the printer to. You will now see “PushedPrinterConnections” under the “Machine” and “User” nodes:</p>
<p><a href="http://janegilring.files.wordpress.com/2009/11/image9.png"><img style="display:inline;border-width:0;" title="image" src="http://janegilring.files.wordpress.com/2009/11/image_thumb9.png?w=244&#038;h=76" border="0" alt="image" width="244" height="76" /></a></p>
<p>When looking at “PushedPrinterConnections” under the “User” node, we see an entry of type “msPrint-ConnectionPolicy”:</p>
<p><a href="http://janegilring.files.wordpress.com/2009/11/image10.png"><img style="display:inline;border-width:0;" title="image" src="http://janegilring.files.wordpress.com/2009/11/image_thumb10.png?w=262&#038;h=27" border="0" alt="image" width="262" height="27" /></a></p>
<p>When we go into “Properties” on the “msPrint-ConnectionPolicy” and go to “Attribute Editor”, we can see that this represents the printer connection we added:</p>
<p><a href="http://janegilring.files.wordpress.com/2009/11/image11.png"><img style="display:inline;border-width:0;" title="image" src="http://janegilring.files.wordpress.com/2009/11/image_thumb11.png?w=265&#038;h=293" border="0" alt="image" width="265" height="293" /></a></p>
<p><span style="font-size:large;">Deployment to client computers</span></p>
<p>Client computers running Windows Vista and later have native support for the new printer connection policies, and will work “out-of-the-box” when printer connections are added to a Group Policy.</p>
<p>Client computers running Windows 2000 and Windows XP doesn`t support the the new printer connection policies natively. To resolve this, there are a utility called “pushprinterconnections.exe” which must be added to a logonscript in Group Policy. This utility will check the computer and user Group Policy Objects and add any printer connections defined.</p>
<p>This utility have 1 parameter: –log. This is useful when troubleshooting problems, and I would recommend you to use this parameter. As you can see, the utility should not be run manually from the command line:</p>
<p><a href="http://janegilring.files.wordpress.com/2009/11/image12.png"><img style="display:inline;border-width:0;" title="image" src="http://janegilring.files.wordpress.com/2009/11/image_thumb12.png?w=446&#038;h=154" border="0" alt="image" width="446" height="154" /></a></p>
<p>Here is an example of the utility added to a logon-script in a Group Policy Object:</p>
<p><a href="http://janegilring.files.wordpress.com/2009/11/image13.png"><img style="display:inline;border-width:0;" title="image" src="http://janegilring.files.wordpress.com/2009/11/image_thumb13.png?w=270&#038;h=392" border="0" alt="image" width="270" height="392" /></a></p>
<p>The log-files are named “ppcUser.log” and “ppcComputer.log”. These are located in the %temp% directory:</p>
<p><a href="http://janegilring.files.wordpress.com/2009/11/image14.png"><img style="display:inline;border-width:0;" title="image" src="http://janegilring.files.wordpress.com/2009/11/image_thumb14.png?w=479&#038;h=50" border="0" alt="image" width="479" height="50" /></a></p>
<p>Here is an example output of the logfile:</p>
<p><a href="http://janegilring.files.wordpress.com/2009/11/image15.png"><img style="display:inline;border-width:0;" title="image" src="http://janegilring.files.wordpress.com/2009/11/image_thumb15.png?w=567&#038;h=85" border="0" alt="image" width="567" height="85" /></a></p>
<p>In Windows 2000 and Windows XP, no other feedback than these log-files are provided.</p>
<p>In Windows Vista/Windows Server 2008 and later, the following feedback are shown during logon:</p>
<p><a href="http://janegilring.files.wordpress.com/2009/11/image16.png"><img style="display:inline;border-width:0;" title="image" src="http://janegilring.files.wordpress.com/2009/11/image_thumb16.png?w=244&#038;h=182" border="0" alt="image" width="244" height="182" /></a></p>
<p>In addition, any failures are logged to the “Application”-log with Source “SpoolerSpoolss”.</p>
<p><span style="font-size:small;"><strong>Special considerations</strong></span></p>
<p>Windows 2000 supports only “per machine” deployments when using the pushprinterconnections.exe utility.</p>
<p>The pushprinterconnections.exe utility won`t catch “per user” connection policies when using “User Group Policy loopback processing”. You must link the GPO containing the “per user” connection policies to an Organizational Unit where the users reside.</p>
<p>Use ACL`s  on the printer objects on the print servers to publish the printers based on group membership. By using this approach, all printer connections may be defined in the same Group Policy Object.</p>
<p><span style="font-size:large;">My recommendations</span></p>
<p>As I said in the introduction to this post, printer connections have traditionally been deployed to users with scripting. Since there are native ways to accomplish this using Group Policy, this would be my recommendation.</p>
<p>Considerations for using the “Deploy with Group Policy” feature in the print server role:</p>
<p>-the print administrator would have an overview over all printers which are deployed with the Print Management Group Policy feature in the Print Management console<br />
-printers can be administered in an individual GPO like GP Preferences with the Print Management console. To do so, open Group Policy Editor, expand Computer Configuration/User Configuration-&gt;Policies-&gt;Windows Settings-&gt;Deployed Printers<br />
-it requires that pushprinterconnections.exe are run on Windows XP and Windows Server 2003 clients<br />
-it is available with Windows XP/Windows Server 2003 R2 and later (backwards compatible to Windows 2000 Professional/2000 Server)<br />
-it requires Windows Server 2003 Client Access Licenses (CALs)</p>
<p>Considerations for using Group Policy Preferences:</p>
<p>-it can handle more different printer types (local, TCP/IP, and shared instead of only &#8220;shared&#8221;)<br />
-it has several additional options (deleting all existing connections, setting default printer, etc.)<br />
-it can save a lot of GPOs because you can have many printer objects in one GPO and use &#8220;Item Level Targeting&#8221; to address each printer individually (e.g. clients in a specific IP-range, per group or even per user)<br />
-it is easy to automate the process of adding printer objects to a GPO using Windows PowerShell, since the GP Preferences settings are store in XML-files<br />
-it requires that Group Policy Client Side Extenstions are deployed on Windows XP and Windows Server 2003 clients<br />
-it is available with Windows Vista/Windows Server 2008 and later (backwards compatible to Windows XP/2003 Server)<br />
-it requires Windows Server 2008 Client Access Licenses (CALs)</p>
<p><span style="font-size:large;"> </span></p>
<p><span style="font-size:large;">Resource links</span></p>
<p><a href="http://technet.microsoft.com/en-us/library/cc755424(WS.10).aspx#BKMK_DeployingPrinters">Step-by-Step Guide for Print Management</a><br />
(Applies To: Windows Server 2003 R2)</p>
<p><a href="http://technet.microsoft.com/en-us/library/cc753109(WS.10).aspx">Print Management Step-by-Step Guide</a><br />
Applies To: Windows Server 2008</p>
<p><a href="http://technet.microsoft.com/en-us/library/cc766474.aspx">Print Management</a><br />
(Applies To: Windows 7, Windows Server 2008 R2, Windows Vista)</p>
<p><a href="http://technet.microsoft.com/en-us/library/cc772505.aspx">Deploy the PushPrinterConnections.exe Utility</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/janegilring.wordpress.com/314/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/janegilring.wordpress.com/314/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/janegilring.wordpress.com/314/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/janegilring.wordpress.com/314/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/janegilring.wordpress.com/314/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/janegilring.wordpress.com/314/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/janegilring.wordpress.com/314/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/janegilring.wordpress.com/314/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/janegilring.wordpress.com/314/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/janegilring.wordpress.com/314/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.powershell.no&blog=5892504&post=314&subd=janegilring&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://blog.powershell.no/2009/11/08/deploying-printers-using-group-policy/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/ed08d635415486b87539a6e5a81982b7?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">janegilring</media:title>
		</media:content>

		<media:content url="http://janegilring.files.wordpress.com/2009/11/image_thumb1.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://janegilring.files.wordpress.com/2009/11/image_thumb2.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://janegilring.files.wordpress.com/2009/11/image_thumb3.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://janegilring.files.wordpress.com/2009/11/image_thumb4.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://janegilring.files.wordpress.com/2009/11/image_thumb5.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://janegilring.files.wordpress.com/2009/11/image_thumb6.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://janegilring.files.wordpress.com/2009/11/image_thumb7.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://janegilring.files.wordpress.com/2009/11/image_thumb8.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://janegilring.files.wordpress.com/2009/11/image_thumb9.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://janegilring.files.wordpress.com/2009/11/image_thumb10.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://janegilring.files.wordpress.com/2009/11/image_thumb11.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://janegilring.files.wordpress.com/2009/11/image_thumb12.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://janegilring.files.wordpress.com/2009/11/image_thumb13.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://janegilring.files.wordpress.com/2009/11/image_thumb14.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://janegilring.files.wordpress.com/2009/11/image_thumb15.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://janegilring.files.wordpress.com/2009/11/image_thumb16.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>
	</item>
		<item>
		<title>Bulk-create printer objects on print servers using Windows PowerShell</title>
		<link>http://blog.powershell.no/2009/11/07/bulk-create-printer-objects-on-print-servers-using-windows-powershell/</link>
		<comments>http://blog.powershell.no/2009/11/07/bulk-create-printer-objects-on-print-servers-using-windows-powershell/#comments</comments>
		<pubDate>Sat, 07 Nov 2009 21:53:56 +0000</pubDate>
		<dc:creator>Jan Egil Ring</dc:creator>
				<category><![CDATA[Print management]]></category>
		<category><![CDATA[Scripting]]></category>
		<category><![CDATA[Windows PowerShell]]></category>

		<guid isPermaLink="false">http://janegilring.wordpress.com/2009/11/07/bulk-create-printer-objects-on-print-servers-using-windows-powershell/</guid>
		<description><![CDATA[When installing a new print-server with several hundreds or thousands of printer objects there arent`t too much fun doing this manually. Here are 3 steps to automate this process: 1) Install all the necessary printer drivers on the printserver 2) Create a csv-file with a listing of all printer objects and their properties 3) Bulk-import the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.powershell.no&blog=5892504&post=280&subd=janegilring&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p>When installing a new print-server with several hundreds or thousands of printer objects there arent`t too much fun doing this manually.</p>
<p>Here are 3 steps to automate this process:</p>
<p>1) Install all the necessary printer drivers on the printserver</p>
<p>2) Create a csv-file with a listing of all printer objects and their properties</p>
<p>3) Bulk-import the printer objects using a script</p>
<p>For the 3rd step I`ve created a basic Windows PowerShell script, available on <a href="http://poshcode.org">PoshCode.org</a> from <a href="http://poshcode.org/1462">this link</a>.</p>
<p>The script contains one function for creating a TCP/IP printer port and one function for creating a printer object. These functions are used in a foreach-loop cycling through the csv-file containing all the printer objects. The script are pretty basic, and should be further expanded with error handling and further details for printer properties.</p>
<p>The script are created and tested on a Windows Server 2008 server against a remote Windows Server 2003 server.<br />
Running the script from Windows Server 2003 returns an access denied error, possibly due to the impersonation-model in Windows Server 2003. However, it should work from Windows Vista, Windows 7, Windows Server 2008 and Windows Server 2008 R2 against remote print-servers (2000/2003/2008/2008 R2).</p>
<p>Especially the ability to set NTFS permissions on the printer objects would be a useful addition in the script.</p>
<p>Please feel free to leave suggestions for improvements in the comments section below.</p>
<p>Update 09.11.2009:<br />
I`ve got some feedback regarding the ability to set NTFS permissions on the printer objects in the script.<br />
A utility called SubInACL from Microsoft could be used for this.</p>
<p>Example usage:<br />
subinacl.exe /printer &#8220;<a href="//\\print-server\printer">\\print-server\printer</a>&#8221; /revoke=&#8221;Power Users&#8221;<br />
subinacl.exe /printer &#8220;<a href="//\\print-server\printer">\\print-server\printer</a>&#8221; /grant=&#8221;DOMAIN\Domain Users&#8221;</p>
<p>The tool can be downloaded from <a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=E8BA3E56-D8FE-4A91-93CF-ED6985E3927B&amp;displaylang=en" target="_blank">here</a>.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/janegilring.wordpress.com/280/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/janegilring.wordpress.com/280/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/janegilring.wordpress.com/280/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/janegilring.wordpress.com/280/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/janegilring.wordpress.com/280/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/janegilring.wordpress.com/280/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/janegilring.wordpress.com/280/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/janegilring.wordpress.com/280/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/janegilring.wordpress.com/280/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/janegilring.wordpress.com/280/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.powershell.no&blog=5892504&post=280&subd=janegilring&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://blog.powershell.no/2009/11/07/bulk-create-printer-objects-on-print-servers-using-windows-powershell/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/ed08d635415486b87539a6e5a81982b7?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">janegilring</media:title>
		</media:content>
	</item>
	</channel>
</rss>