<?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/"
	>

<channel>
	<title>System Center Ideas</title>
	<atom:link href="http://systemcenterideas.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://systemcenterideas.com</link>
	<description></description>
	<lastBuildDate>Tue, 08 Dec 2009 16:38:52 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Windows 7 Compatibility</title>
		<link>http://systemcenterideas.com/2009/12/windows-7-compatibility/</link>
		<comments>http://systemcenterideas.com/2009/12/windows-7-compatibility/#comments</comments>
		<pubDate>Tue, 08 Dec 2009 16:38:52 +0000</pubDate>
		<dc:creator>Chad Ingles</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://systemcenterideas.com/?p=75</guid>
		<description><![CDATA[I came across Mary-Jo Foley&#8217;s post &#8220;Windows 7 compatibility problems? Microsoft might have an app (or service) for that&#8221; on the All About Microsoft blog and thought I&#8217;d offer my $0.02.
Based on my experiences in the field, including a successful Windows 7 Rapid Deployment Program, I have to say the compatibility story for Windows 7 [...]]]></description>
			<content:encoded><![CDATA[<p>I came across Mary-Jo Foley&#8217;s post &#8220;<span style="background-color: #ffffff;"><a href="http://blogs.zdnet.com/microsoft/?p=4720&amp;tag=col1;post-4720">Windows 7 compatibility problems? Microsoft might have an app (or service) for that</a>&#8221; on the All About Microsoft blog and thought I&#8217;d offer my $0.02.</span></p>
<p><span style="background-color: #ffffff;">Based on my experiences in the field, including a successful <a href="http://www.microsoft.com/caseStudies/Case_Study_Detail.aspx?casestudyid=4000005773">Windows 7 Rapid Deployment Program</a>, I have to say the compatibility story for Windows 7 is surprisingly positive. First of all the number of applications experiencing compatibility issues has been very low so far, and for those that have had issues the solutions have been quick and easy.</span></p>
<p><span style="background-color: #ffffff;">In addition to the programs that Mary-Jo mentioned there is another that is specifically geared to application compatibility remediation: <a href="http://technet.microsoft.com/en-us/windows/bb510132.aspx">Microsoft&#8217;s Application Compatiblity Factory (ACF) Program</a>. This program, provided using Microsoft Partners, focuses on using the <a href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;FamilyID=24da89e9-b581-47b0-b45e-492dd6da2971">Application Compatibility Toolkit 5.5</a> to quickly assess and remediate compatibility issues across the enterprise. It&#8217;s a great way to put a box around the scope and scale of potential effort required for an organization&#8217;s Windows 7 migration.</span></p>
<p><span style="background-color: #ffffff;">Here are some additional links to ACF materials:</span></p>
<ul>
<li><span style="background-color: #ffffff;"><a href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;FamilyID=8342ce5c-b813-4842-9416-ee8a93741f75">Microsoft ACF Introduction</a></span></li>
<li><span style="background-color: #ffffff;"><a href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;FamilyID=d20e1c63-e8ea-45bd-97d1-914e6adf1c8e">About ACF Handout Card</a></span></li>
</ul>
<p>Out of all the programs mentioned, ACF is the most targeted at compatibility remediation. Talk to your Microsoft representative to find a local partner that can provide the service. I think you&#8217;ll be pleasantly surprised (and relieved) to find out the reality of your compatibility issues instead of worrying about what you think you might encounter when migrating to Windows 7.</p>
]]></content:encoded>
			<wfw:commentRss>http://systemcenterideas.com/2009/12/windows-7-compatibility/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Automatically Setting Display Resolution</title>
		<link>http://systemcenterideas.com/2009/10/automatically-setting-display-resolution/</link>
		<comments>http://systemcenterideas.com/2009/10/automatically-setting-display-resolution/#comments</comments>
		<pubDate>Fri, 02 Oct 2009 13:13:42 +0000</pubDate>
		<dc:creator>Chad Ingles</dc:creator>
				<category><![CDATA[Deployment]]></category>
		<category><![CDATA[MDT]]></category>

		<guid isPermaLink="false">http://systemcenterideas.com/2009/10/automatically-setting-display-resolution/</guid>
		<description><![CDATA[I recently needed to be able to automatically set the display resolution during operating system deployment. I couldn’t get the resolution to change by setting the XResolution and YResolution MDT properties so I put together the following solution.
After following a thread on a myITforum mailing list about the same issue I put together this solution [...]]]></description>
			<content:encoded><![CDATA[<p>I recently needed to be able to automatically set the display resolution during operating system deployment. I couldn’t get the resolution to change by setting the XResolution and YResolution MDT properties so I put together the following solution.</p>
<p>After following a thread on a <a href="http://www.myitforum.com/">myITforum</a> mailing list about the same issue I put together this solution using this <a href="http://unattended.msfn.org/files/global/1365Vidchng.zip">Video Resolution Changer</a> which worked best for me out of the bunch that were mentioned. You could swap it out for another EXE by modifying the script.</p>
<p>The display resolution is configured automatically during deployment by running ResSwitch.vbs as a step in the task sequence. I started with <a href="http://www.eggheadcafe.com/forumarchives/scriptingvisualbasicscript/dec2005/post25026144.asp">this Speed/Duplex script</a> and modified it to set the resolution instead, using ResSwitch.ini to hold the configuration.</p>
<p>ResSwitch.ini uses the following format:</p>
<pre>[HWP2694]</pre>
<pre>;HP L2045w</pre>
<pre>WIDTH=1680</pre>
<pre>HEIGHT=1050</pre>
<p>Where the string between the brackets must be found in the “PNPDeviceID” WMI value in the root\cimv2\Win32_DesktopMonitor class. Lines beginning with “;” are ignored. You must include WIDTH and HEIGHT entries to specify the desired display resolution. All displays will be set to 32-bit colour depth and 60Hz refresh rate.</p>
<p>To retrieve the PNPDeviceID value in order to add a new monitor to ResSwitch.ini you can run the following:</p>
<p>1. Open a Command Prompt</p>
<p>2. Run “wmic desktopmonitor list full”</p>
<p><a href="http://systemcenterideas.com/wp-content/uploads/2009/10/image.png"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" src="http://systemcenterideas.com/wp-content/uploads/2009/10/image_thumb.png" border="0" alt="image" width="580" height="383" /></a></p>
<p>3. Look for the PNPDeviceID value and select a subset to use as the search string. Typically the value between the backslashes will work best.</p>
<p>To use the script just unzip the ResSwitch.zip file below, download the <a href="http://unattended.msfn.org/files/global/1365Vidchng.zip">Video Resolution Changer</a> and copy 1365VidChng.exe to the same folder. Then run ResSwitch.vbs, i.e., “cscript ResSwitch.vbs”.</p>
<p>It would be cool to collect a whole bunch of PNPDeviceIDs with resolutions to build a comprehensive INI file. Feel free to post yours in the comments and I’ll add it to the file!</p>
<p><a href="http://systemcenterideas.com/wp-content/uploads/2009/10/ResSwitch.zip">ResSwitch.zip</a></p>
]]></content:encoded>
			<wfw:commentRss>http://systemcenterideas.com/2009/10/automatically-setting-display-resolution/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Application Installation Errors using SLShareDynamicLogging</title>
		<link>http://systemcenterideas.com/2009/09/application-installation-errors-using-slsharedynamiclogging/</link>
		<comments>http://systemcenterideas.com/2009/09/application-installation-errors-using-slsharedynamiclogging/#comments</comments>
		<pubDate>Mon, 28 Sep 2009 15:29:38 +0000</pubDate>
		<dc:creator>Chad Ingles</dc:creator>
				<category><![CDATA[Deployment]]></category>
		<category><![CDATA[MDT]]></category>

		<guid isPermaLink="false">http://systemcenterideas.com/2009/09/application-installation-errors-using-slsharedynamiclogging/</guid>
		<description><![CDATA[A quick note about an issue I recently encountered. I started seeing random application installation failures in the deployment task sequence with entries in BDD.Log like:

################    ZTIApplications    18/09/2009 1:00:35 PM    0 (0x0000)
Dependent entry: {24db38a6-bb6d-4c05-acad-25682702ccb7}    ZTIApplications    18/09/2009 1:00:35 PM    0 (0x0000)
################    ZTIApplications    18/09/2009 1:00:35 PM    0 (0x0000)
Using a local or mapped drive, no connection is required.    [...]]]></description>
			<content:encoded><![CDATA[<p>A quick note about an issue I recently encountered. I started seeing random application installation failures in the deployment task sequence with entries in BDD.Log like:</p>
<hr />
<pre>################    ZTIApplications    18/09/2009 1:00:35 PM    0 (0x0000)
Dependent entry: {24db38a6-bb6d-4c05-acad-25682702ccb7}    ZTIApplications    18/09/2009 1:00:35 PM    0 (0x0000)
################    ZTIApplications    18/09/2009 1:00:35 PM    0 (0x0000)
Using a local or mapped drive, no connection is required.    ZTIApplications    18/09/2009 1:00:35 PM    0 (0x0000)
Change directory: Z:\Applications\Adobe Reader 9.1.3    ZTIApplications    18/09/2009 1:00:35 PM    0 (0x0000)
<strong>WARNING - unable to set working directory:  (-2147024893)</strong>    ZTIApplications    18/09/2009 1:00:35 PM    0 (0x0000)
Run Command: \\server.domain.com\DeploymentShare$\Tools\X64\bddrun.exe Adobe_Reader_9.cmd    ZTIApplications    18/09/2009 1:00:36 PM    0 (0x0000)
ZTI installing application     ZTIApplications    18/09/2009 1:00:36 PM    0 (0x0000)
About to run command: \\server.domain.com\DeploymentShare$\Tools\X64\bddrun.exe Adobe_Reader_9.cmd    ZTIApplications    18/09/2009 1:00:36 PM    0 (0x0000)
Return code from command = 2    ZTIApplications    18/09/2009 1:00:36 PM    0 (0x0000)
Application Adobe Reader 9.1.3 returned an unexpected return code: 2    ZTIApplications    18/09/2009 1:00:36 PM    0 (0x0000)</pre>
<hr />
But this only happened for about half of the applications. During the task sequence I opened a Command Prompt (good old F8) and noticed that Z: was already mapped (as the log said), but not to the root of the deployment share. It was mapped to the logging share. Of course the applications folder wasn’t under the logging share.</p>
<p>I had recently enabled logging (SLShare), and dynamic logging (SLShareDynamicLogging) to try to track the various pilot deploys that were going on. Disabling SLShareDynamicLogging resolved the issue.</p>
<p>Why only some applications? It was the applications that were using a .BAT or .CMD file to install. Those files require an environment with a current working directory and so need to be run from a mapped drive. The other applications either ran a .VBS script or the installation executable directly. They were able to run using the just the UNC path.</p>
<p>End result is that if you want or need to use SLShareDynamicLogging you’ll need to make sure none of your applications are using .BAT or .CMD based installations.</p>
]]></content:encoded>
			<wfw:commentRss>http://systemcenterideas.com/2009/09/application-installation-errors-using-slsharedynamiclogging/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>USMT Issues with MDT 2010</title>
		<link>http://systemcenterideas.com/2009/09/usmt-issues-with-mdt-2010/</link>
		<comments>http://systemcenterideas.com/2009/09/usmt-issues-with-mdt-2010/#comments</comments>
		<pubDate>Fri, 25 Sep 2009 17:48:55 +0000</pubDate>
		<dc:creator>Chad Ingles</dc:creator>
				<category><![CDATA[Deployment]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://systemcenterideas.com/2009/09/usmt-issues-with-mdt-2010/</guid>
		<description><![CDATA[I’m working on a Windows XP to Windows 7 migration project (I think we’ll all be working on those for the next couple of years!) using a standalone MDT 2010 solution. Overall it’s been working great and the improvements in MDT over each version have resulted in a really impressive deployment platform.
I’ve got a Windows [...]]]></description>
			<content:encoded><![CDATA[<p>I’m working on a Windows XP to Windows 7 migration project (I think we’ll all be working on those for the next couple of years!) using a standalone MDT 2010 solution. Overall it’s been working great and the improvements in MDT over each version have resulted in a really impressive deployment platform.</p>
<p>I’ve got a Windows XP REFRESH scenario working and USMT is doing what it’s supposed to do even with hardlinking enabled and working automatically. But it’s not capturing the users’ mapped printers and network drives, or other user settings. My Documents, desktop items, IE favourites, those are all fine.</p>
<p>It took a fair bit of digging but I finally came across this in USMTcapture.log</p>
<p>?<strong>2009-09-23 15:16:05, Info                  [0x000000] Downlevel Manifests folder is not present. System component settings will not be gathered.</strong></p>
<p>This Downlevel Manifests folder is pretty important. It’s used to gather all of those user settings from older operating systems like Windows XP.</p>
<p>I poked around and the DlManifests folder was being copied from the deployment share and it looked like the correct folder structure was in place:</p>
<p><a href="http://systemcenterideas.com/wp-content/uploads/2009/09/usmt.png"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="usmt" src="http://systemcenterideas.com/wp-content/uploads/2009/09/usmt_thumb.png" border="0" alt="usmt" width="247" height="136" /></a></p>
<p>Scanstate.exe just wasn’t finding the DlManifests folder. On a hunch, I ended up modifying the ZTIUserState.wsf script to specifically set the current working directory to “C:\MININT\USMT” and it fixed the problem!</p>
<p>Here’s what I added to ZTIUserState.wsf starting around line 620:</p>
<p><span style="font-family: Courier New;">On Error Resume Next<br />
&#8216;*** BEGIN MODIFICATIONS ***<br />
Dim objShell<br />
Dim sCurDir<br />
&#8216; Save current directory<br />
sCurDir = oFSO.GetAbsolutePathName(&#8220;.&#8221;)<br />
oLogging.CreateEntry &#8220;Saved current directory: &#8221; _</span></p>
<p><span style="font-family: Courier New;"> &amp; sCurDir, LogTypeInfo<br />
&#8216; Set the current directory to sUSMTPath<br />
Set objShell = CreateObject(&#8220;WScript.Shell&#8221;)<br />
objShell.CurrentDirectory = sUSMTPath<br />
oLogging.CreateEntry &#8220;Set current directory: &#8221; _</span></p>
<p><span style="font-family: Courier New;"> &amp; sUSMTPath, LogTypeInfo<br />
&#8216;*** END MODIFICATIONS *** </span></p>
<p><span style="font-family: Courier New;">sCmd = &#8220;cmd /c &#8220;&#8221;"&#8221;" &amp; sUSMTPath &amp; &#8220;\scanstate.exe&#8221;" &#8221; _</span></p>
<p><span style="font-family: Courier New;"> &amp; sScanStateArgs &amp; &#8221; &gt; nul 2&gt;&amp;1&#8243;&#8221;"<br />
iRetVal = oUtility.RunWithHeartbeat(sCmd) </span></p>
<p><span style="font-family: Courier New;">&#8216;*** BEGIN MODIFICATIONS ***<br />
&#8216; Reset current directory to original value<br />
objShell.CurrentDirectory = sCurDir<br />
oLogging.CreateEntry &#8220;Set current directory: &#8221; _</span></p>
<p><span style="font-family: Courier New;"> &amp; sCurDir, LogTypeInfo<br />
&#8216;*** END MODIFICATIONS ***</span></p>
<p><span style="font-family: Courier New;"><em>UPDATE: I&#8217;ve attached the working ZTIUserState.wsf script. Big note, this is a modified MDT 2010 <strong>RC </strong>script. I&#8217;m not sure if there are other </em></span><span style="font-family: Courier New;"><em>changes between RC and RTM. I&#8217;ll take a look when I find a spare hour!</em></span></p>
<p><em>UPDATE2: Thanks Johan for confirming below that the fix applies to both MDT 2010 RC and RTM.</em></p>
<p><em>UPDATE3: This same fix works for MDT 2010 RC and RTM. The only difference (confirmed by Johan below) is the version number in the script comments. I&#8217;ve updated the attachment to include the RTM version of the script.</em></p>
<p><span style="font-family: 'Courier New';"><a href="http://systemcenterideas.com/wp-content/uploads/2009/11/ZTIUserState.zip">ZTIUserState</a></span></p>
]]></content:encoded>
			<wfw:commentRss>http://systemcenterideas.com/2009/09/usmt-issues-with-mdt-2010/feed/</wfw:commentRss>
		<slash:comments>15</slash:comments>
		</item>
		<item>
		<title>Configuring Windows XP in Microsoft VDI</title>
		<link>http://systemcenterideas.com/2009/09/configuring-windows-xp-in-microsoft-vdi/</link>
		<comments>http://systemcenterideas.com/2009/09/configuring-windows-xp-in-microsoft-vdi/#comments</comments>
		<pubDate>Mon, 14 Sep 2009 17:06:17 +0000</pubDate>
		<dc:creator>Chad Ingles</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://systemcenterideas.com/2009/09/configuring-windows-xp-in-microsoft-vdi/</guid>
		<description><![CDATA[I recently implemented a Microsoft-based Virtual Desktop Infrastructure (VDI) solution. With the release of Windows 2008 R2 you now have a pure-Microsoft VDI stack. It includes all of the previously-named Terminal Services components and a bunch of new functionality to enable the two key scenarios of Personal Virtual Desktops and Virtual Desktop Pools. Microsoft’s proof-of-concept [...]]]></description>
			<content:encoded><![CDATA[<p>I recently implemented a Microsoft-based Virtual Desktop Infrastructure (VDI) solution. With the release of <a href="http://www.microsoft.com/windowsserver2008/en/us/default.aspx">Windows 2008 R2</a> you now have a pure-Microsoft VDI stack. It includes all of the previously-named Terminal Services components and a bunch of new functionality to enable the two key scenarios of Personal Virtual Desktops and Virtual Desktop Pools. <a href="http://technet.microsoft.com/en-us/library/dd647502(WS.10).aspx">Microsoft’s proof-of-concept implementation documentation</a> takes you through the entire process of installing and configuring the solution. It’s great documentation except that it focuses on Windows 7 clients. I had to provide Windows XP virtual desktops running as PVD and VDP and ran into a snag in the configuration process.</p>
<p>When you get to the point “To add RDP protocol permissions to a virtual machine” in Step 2: Installing and Configuring Virtual Machines you’ll quickly realize the command-lines included don’t work on Windows XP:</p>
<pre>wmic /node:localhost RDPERMISSIONS where TerminalName="RDP-Tcp" CALL AddAccount "contoso\rdvh-srv$",1
wmic /node:localhost RDACCOUNT where "(TerminalName='RDP-Tcp' or TerminalName='Console') and AccountName='contoso\\rdvh-srv$'" CALL ModifyPermissions 0,1
wmic /node:localhost RDACCOUNT where "(TerminalName='RDP-Tcp' or TerminalName='Console') and AccountName='contoso\\rdvh-srv$'" CALL ModifyPermissions 2,1
wmic /node:localhost RDACCOUNT where "(TerminalName='RDP-Tcp' or TerminalName='Console') and AccountName='contoso\\rdvh-srv$'" CALL ModifyPermissions 9,1</pre>
<p>After a bit of searching I found various PowerShell and VB Scripts to configure the settings but none seemed to work as-is. Also, PowerShell wasn’t available on the Windows XP images I was using and I didn’t have the freedom to add it. I tried to simplify the things and ended up with the following two scripts to configure the RDP protocol permissions on Windows XP. You need to replace %DOMAIN% and %ACCOUNT% with the Remote Desktop Virtualization Host domain and computer account name, i.e., “CONTOSO” and “RDHV-SRV$” as per the proof-of-concept documentation. Note the first occurrence has a single backslash but the second one has two. Copy them into a .vbs file and execute them by double-clicking or with cscript from the command-prompt.</p>
<pre>set objWMI = GetObject("winmgmts:\\.\root\cimv2")
set colItems = objWMI.ExecQuery("Select * from Win32_TSPermissionsSetting")
for each objItem in colItems
   intRC = objItem.AddAccount("%DOMAIN%\ACCOUNT%", 1)
   if intRC then
      WScript.Echo "Error adding " &amp; strAccount &amp; " to " &amp; _
                   objItem.TerminalName
   else
      WScript.Echo "Successfully added " &amp; strAccount &amp; " to " &amp; _
                   objItem.TerminalName
   end if
next</pre>
<pre>set objWMI = GetObject("winmgmts:\\.\root\cimv2")
set colItems = objWMI.ExecQuery ("Select * from Win32_TSAccount Where AccountName='%DOMAIN%\\%ACCOUNT%'")
for each objItem in colItems
    intRC = objItem.ModifyPermissions(0,True)
    intRC = objItem.ModifyPermissions(2,True)
    intRC = objItem.ModifyPermissions(9,True)
    if intRC then
       WScript.Echo "Error setting permissions for " &amp; strAccount
    else
       WScript.Echo "Set permissions for " &amp; strAccount
    end if
next</pre>
<p>Download <a href="http://systemcenterideas.com/wp-content/uploads/2009/09/Configure_XP.vbs">Configure_XP.vbs</a></p>
]]></content:encoded>
			<wfw:commentRss>http://systemcenterideas.com/2009/09/configuring-windows-xp-in-microsoft-vdi/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Easy Local Group Policy</title>
		<link>http://systemcenterideas.com/2009/09/easy-local-group-policy/</link>
		<comments>http://systemcenterideas.com/2009/09/easy-local-group-policy/#comments</comments>
		<pubDate>Mon, 14 Sep 2009 14:32:54 +0000</pubDate>
		<dc:creator>Chad Ingles</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://systemcenterideas.com/2009/09/easy-local-group-policy/</guid>
		<description><![CDATA[Every now and then I’ve needed to configure Group Policy settings locally or offline and backup/restore them to another computer. Here’s a simple way to do so. It can even be used to bake the settings into an image for mass deployments. This is documented from a Windows 7 system box, but it may work [...]]]></description>
			<content:encoded><![CDATA[<p>Every now and then I’ve needed to configure Group Policy settings locally or offline and backup/restore them to another computer. Here’s a simple way to do so. It can even be used to bake the settings into an image for mass deployments. This is documented from a Windows 7 system box, but it may work with other down-level versions. This method was easy and efficient for me, does anyone have an easier or official way?</p>
<p>1. Open the Local Group Policy MMC (Start –&gt; Run –&gt; “gpedit.msc”</p>
<p><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; margin-left: 0px; border-left-width: 0px; margin-right: 0px" title="image" border="0" alt="image" src="http://systemcenterideas.com/wp-content/uploads/2009/09/image.png" width="378" height="484" /> </p>
<p>&#160;</p>
<p><font color="#acb613"></font><a href="http://systemcenterideas.com/wp-content/uploads/2009/09/image1.png"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; margin-left: 0px; border-left-width: 0px; margin-right: 0px" title="image" border="0" alt="image" src="http://systemcenterideas.com/wp-content/uploads/2009/09/image_thumb.png" width="644" height="452" /></a></p>
<p>2. Configure the required settings.</p>
<p>3. Copy the contents of C:\Windows\System32\GroupPolicy to wherever you want to keep the source Group Policy settings.</p>
<p><a href="http://systemcenterideas.com/wp-content/uploads/2009/09/image2.png"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://systemcenterideas.com/wp-content/uploads/2009/09/image_thumb1.png" width="644" height="484" /></a> </p>
<p>4. Copy the contents back onto the system you want to have the same settings, including your reference system if you’re building an image.</p>
]]></content:encoded>
			<wfw:commentRss>http://systemcenterideas.com/2009/09/easy-local-group-policy/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Per-User Configuration Using Active Setup</title>
		<link>http://systemcenterideas.com/2009/08/per-user-configuration-using-active-setup/</link>
		<comments>http://systemcenterideas.com/2009/08/per-user-configuration-using-active-setup/#comments</comments>
		<pubDate>Tue, 04 Aug 2009 14:54:18 +0000</pubDate>
		<dc:creator>Chad Ingles</dc:creator>
				<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://systemcenterideas.com/2009/08/per-user-configuration-using-active-setup/</guid>
		<description><![CDATA[Introduction
A common difficulty in desktop management is configuring per-user settings. Active Setup is a process that runs automatically every time a user logs in to a computer that can address this problem in a simple and flexible way.
If your application requires installation of components such as files or registry keys on a per-user basis, but [...]]]></description>
			<content:encoded><![CDATA[<h4>Introduction</h4>
<p>A common difficulty in desktop management is configuring per-user settings. Active Setup is a process that runs automatically every time a user logs in to a computer that can address this problem in a simple and flexible way.</p>
<p>If your application requires installation of components such as files or registry keys on a per-user basis, but your application has no advertised entry points or other triggers to initiate the installation process, then Active Setup is the solution. </p>
<p>When the user logs in the registry keys under <b><i>HKEY_LOCAL_MACHINE</i></b><b>\Software\Microsoft\Active Setup\Installed Components\%APPNAME%</b> are compared to the keys under <b><i>HKEY_CURRENT_USER</i></b><b>\Software\Microsoft\Active Setup\Installed Components\%APPNAME%</b> and if the HKCU registry entries don&#8217;t exist, or the version number of HKCU is less than HKLM, then a specified command-line is executed for the current user.</p>
<p>To implement Active Setup, you simply create the required registry key and values under HKEY_LOCAL_MACHINE to execute the command-line that will apply all of the per-user requirements to the system. This could be an executable, an msiexec.exe command-line, regedit.exe, batch file, or any other executable command-line.</p>
<p><i>Note: </i><i>Active Setup runs as the current user so it is not suitable for actions that require Administrator or other privileged security rights on the local computer.</i></p>
<h4>Creating the Active Setup Registry Entries</h4>
<p>Create the following registry key:</p>
<p><b>HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Active Setup\Installed Components\%APPNAME%</b></p>
<p>Where:</p>
<ul>
<li>%APPNAME% is an arbitrary string which can be the application name, or its ProductCode GUID if using an MSI. This value should be unique to the application. </li>
</ul>
<p>Create the following values under the registry key:</p>
<p>
<table border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td valign="top">
<p><b>Name</b></p>
</td>
<td valign="top">
<p><b>Type</b></p>
</td>
<td valign="top">
<p><b>Data</b></p>
</td>
<td valign="top">
<p><b>Required</b></p>
</td>
</tr>
<tr>
<td valign="top">
<p><b>(Default)</b></p>
</td>
<td valign="top">
<p>REG_SZ</p>
</td>
<td valign="top">
<p>%APPNAME%</p>
</td>
<td valign="top">
<p>No</p>
</td>
</tr>
<tr>
<td valign="top">
<p><b>StubPath</b></p>
</td>
<td valign="top">
<p>REG_SZ</p>
</td>
<td valign="top">
<p>%COMMANDLINE%</p>
</td>
<td valign="top">
<p>Yes</p>
</td>
</tr>
<tr>
<td valign="top">
<p><b>Version</b></p>
</td>
<td valign="top">
<p>REG_SZ</p>
</td>
<td valign="top">
<p>%VERSION%</p>
</td>
<td valign="top">
<p>Yes</p>
</td>
</tr>
<tr>
<td valign="top">
<p><b>ComponentID</b></p>
</td>
<td valign="top">
<p>REG_SZ</p>
</td>
<td valign="top">
<p>%APPNAME%</p>
</td>
<td valign="top">
<p>No</p>
</td>
</tr>
</tbody>
</table>
<p>Where:</p>
<ul>
<li>%APPNAME% is the arbitrary application name specified above </li>
<li>%COMMANDLINE% is the command-line to execute </li>
<li>%VERSION% is an arbitrary version number to determine if Active Setup has run for the specific application </li>
</ul>
<p>When each new user logs on, the operating system compares the Active Setup keys between HKLM and HKCU, and runs the specified command-line if the HKCU entry is missing or the version in HKCU is less than HKLM. </p>
<p>To re-run the same Active Setup or a new version of your per-user application settings, increment the Version registry value in HKLM. The next time the user logs on Active Setup will run again for that user. </p>
<p>An example exported registry file containing the key and values required to configure Active Setup is included below. Simply replace the variables with your required values.<br />
<table cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td>
<p>Windows Registry Editor Version 5.00</p>
<p>[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Active Setup\Installed Components\%APPNAME%]</p>
<p>@=&quot;%APPNAME%&quot;</p>
<p>&quot;StubPath&quot;=&quot;%COMMANDLINE%&quot;</p>
<p>&quot;Version&quot;=&quot;%VERSION%&quot;</p>
<p>&quot;ComponentID&quot;=&quot;%APPNAME%&quot;</p>
</td>
</tr>
</tbody>
</table>
<p>Example registry file: <a href="http://systemcenterideas.com/wp-content/uploads/2009/08/Active_Setup_Example.reg">Active_Setup_Example.reg</a></p>
</p>
<h4>Example: Repairing An Existing MSI-Based Application</h4>
<p>To force a repair using the existing MSI where a separate Active Setup executable is not required you could use the following example:</p>
<p>Create the registry key:</p>
<p>HKEY_LOCAL_MACHINE\Software\Microsoft\Active Setup\Installed Components\%PRODUCTCODE%</p>
<p>Under the registry key create the following values:<br />
<table border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td valign="top">
<p><b>Name</b></p>
</td>
<td valign="top">
<p><b>Type</b></p>
</td>
<td valign="top">
<p><b>Data</b></p>
</td>
<td valign="top">
<p><b>Required</b></p>
</td>
</tr>
<tr>
<td valign="top">
<p><b>(Default)</b></p>
</td>
<td valign="top">
<p>REG_SZ</p>
</td>
<td valign="top">
<p>%APPNAME%</p>
</td>
<td valign="top">
<p>No</p>
</td>
</tr>
<tr>
<td valign="top">
<p><b>StubPath</b></p>
</td>
<td valign="top">
<p>REG_SZ</p>
</td>
<td valign="top">
<p>msiexec /fauvs %PRODUCTCODE% /qb</p>
</td>
<td valign="top">
<p>Yes</p>
</td>
</tr>
<tr>
<td valign="top">
<p><b>Version</b></p>
</td>
<td valign="top">
<p>REG_SZ</p>
</td>
<td valign="top">
<p>%VERSION%</p>
</td>
<td valign="top">
<p>Yes</p>
</td>
</tr>
<tr>
<td valign="top">
<p><b>ComponentID</b></p>
</td>
<td valign="top">
<p>REG_SZ</p>
</td>
<td valign="top">
<p>%APPNAME%</p>
</td>
<td valign="top">
<p>No</p>
</td>
</tr>
</tbody>
</table>
<p>Where:</p>
<ul>
<li>%PRODUCTCODE% is the MSI ProductCode GUID for the application. </li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://systemcenterideas.com/2009/08/per-user-configuration-using-active-setup/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Windows Server 2008 R2 &amp; Hyper-V Server 2008 R2 RTM</title>
		<link>http://systemcenterideas.com/2009/08/windows-server-2008-r2-hyper-v-server-2008-r2-rtm/</link>
		<comments>http://systemcenterideas.com/2009/08/windows-server-2008-r2-hyper-v-server-2008-r2-rtm/#comments</comments>
		<pubDate>Tue, 04 Aug 2009 14:36:26 +0000</pubDate>
		<dc:creator>Chad Ingles</dc:creator>
				<category><![CDATA[Hyper-V]]></category>
		<category><![CDATA[Windows Server]]></category>

		<guid isPermaLink="false">http://systemcenterideas.com/2009/08/windows-server-2008-r2-hyper-v-server-2008-r2-rtm/</guid>
		<description><![CDATA[Lots of big changes in the latest versions of these two products. I’ve been running Windows Server 2008 R2 RC with Hyper-V on my main laptop for a couple of months now and am completely impressed. 
&#160;
Here are the top features (but there are a ton more) from the Windows Server Division Weblog:
&#160;

Hyper-V and Live [...]]]></description>
			<content:encoded><![CDATA[<p>Lots of big changes in the latest versions of these two products. I’ve been running Windows Server 2008 R2 RC with Hyper-V on my main laptop for a couple of months now and am completely impressed. </p>
<p>&#160;</p>
<p>Here are the top features (but there are a ton more) from the <a href="http://blogs.technet.com/windowsserver/archive/2009/07/22/windows-server-2008-r2-rtm.aspx">Windows Server Division Weblog</a>:</p>
<p>&#160;</p>
<ul>
<li><em><b>Hyper-V and Live Migration</b> &#8211; still the big stars. R2&#8217;s Hyper-V enables a complete server virtualization solution available out-of-the-box. Live Migration allows server administrators to migrate VMs between physical machines with no perceived downtime for current server connections and work streams. That means a more dynamic datacenter and more agility in meeting new business needs For more information on Hyper-V in R2, check out today&#8217;s in-depth post on the </em><a href="http://blogs.technet.com/virtualization/"><em>Virtualization Team</em></a><em> blog. </em></li>
<li><em><b>File Classification Infrastructure</b> &#8211; FCI lets you manage your data based on its characteristics, including things like file type, user credentials and even content. Based on this kind of criteria, FCI can assign data different access restrictions, store it in different locations or simply push it into an entirely customized lifecycle scheme &#8211; all done automatically via policy. For me, this is one of the most exciting new features in R2. </em></li>
<li><em><b>Active Directory and Pervasive PowerShell</b> &#8211; 240 new PowerShell cmdlets and several management consoles (including a new Active Directory interface) have been built on top of PowerShell. Active Directory has also been enhanced with the Active Directory Recycle Bin as well as AD Group Policy objects that give desktop administrators deeper capabilities when it comes to managing Windows 7 clients. </em></li>
<li><em><b>IIS 7.5</b> &#8211; The latest edition of Internet Information Server also sports updated management tools as well as application serving capabilities that now including support for PHP and .NET on Server Core installations. </em></li>
<li><em><b>Server Scalability</b> &#8211; Not only is R2 Microsoft&#8217;s first 64-bit-only operating system, it also supports up to 256 logical processors in a single server as well as all the latest CPU technologies. And, R2 has support for advanced storage technologies, including SAN management and solid state hardware. </em></li>
</ul>
<p>And there’s going to be some really nice integration between Server 2008 R2 and Windows 7:</p>
<ul>
<li><em><b>DirectAccess</b>, for example, provides secure, always-on access to corporate networks no matter from what network a client might be connecting. Better yet, it provides a two-way relationship allowing desktop admins to manage clients the same way whether they&#8217;re local or remote. </em></li>
<li><em><b>BranchCache</b> allows users in remote offices to cache corpnet data locally, providing a better work experience for remote workers while simultaneously lowering expensive WAN bandwidth costs. </em></li>
<li><em><b>Remote Desktop and Applications</b> &#8211; Windows Server 2008&#8217;s Terminal Services has now evolved into R2&#8217;s Remote Desktop Services, and it integrates so tightly with Windows 7 that administrators will be able to roll out virtualized applications and even entire desktop environments without users being able to tell that these tools aren&#8217;t running locally. It&#8217;s fast and can even be managed via policy. Very cool stuff.</em></li>
</ul>
<p>&#160;</p>
<p>Finally, on the <a href="http://blogs.technet.com/virtualization/archive/2009/07/22/windows-server-2008-r2-hyper-v-server-2008-r2-rtm.aspx">Microsoft Virtualization Team Blog</a> they’ve got a much longer post with more details on Hyper-V 2008 R2 including this awesome news:</p>
<p><em>“In Hyper-V R2, we spent time analyzing and optimizing the code path for dynamically expanding VHDs and found areas where we could significantly improve performance. In some cases we achieved a <strong>15x improvement</strong> for dynamically expanding virtual hard disks. No, that&#8217;s not a typo. With dynamically expanding VHDs we can achieve up to about ~87% performance of native throughput.&#160; While we were at it, we took another look at the fixed VHD code path and improved it further so that fixed VHD performance is now on par with native performance.”</em></p>
<p>Lots more on that post, Hyper-V is taking a big leap forward with this release!</p>
]]></content:encoded>
			<wfw:commentRss>http://systemcenterideas.com/2009/08/windows-server-2008-r2-hyper-v-server-2008-r2-rtm/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mobile Device Manager Resources</title>
		<link>http://systemcenterideas.com/2009/07/mobile-device-manager-resources/</link>
		<comments>http://systemcenterideas.com/2009/07/mobile-device-manager-resources/#comments</comments>
		<pubDate>Mon, 20 Jul 2009 22:32:32 +0000</pubDate>
		<dc:creator>Chad Ingles</dc:creator>
				<category><![CDATA[Mobile Device Manager]]></category>

		<guid isPermaLink="false">http://systemcenterideas.com/2009/07/mobile-device-manager-resources/</guid>
		<description><![CDATA[It took a bit of time to find MDM resources online. Here’s what I used the most:
&#160;
Websites, Blogs &#38; Forums

Microsoft System Center Mobile Device Manager TechCenter – launch page for all Microsoft MDM resources 
Microsoft System Center Mobile Device Manager Forum – best place for community help 
The System Center Mobile Device Manager Team Blog [...]]]></description>
			<content:encoded><![CDATA[<p>It took a bit of time to find MDM resources online. Here’s what I used the most:</p>
<p>&#160;</p>
<p><strong>Websites, Blogs &amp; Forums</strong></p>
<ul>
<li><a href="http://technet.microsoft.com/en-us/scmdm/default.aspx">Microsoft System Center Mobile Device Manager TechCenter</a> – launch page for all Microsoft MDM resources </li>
<li><a href="http://social.technet.microsoft.com/Forums/en-US/SCMDM/threads">Microsoft System Center Mobile Device Manager Forum</a> – best place for community help </li>
<li><a href="http://blogs.technet.com/mdm/default.aspx">The System Center Mobile Device Manager Team Blog</a> </li>
<li><a href="http://mobilitydojo.net/category/scmdm/">SCMDM Topics at MobilityDojo.net</a> – excellent how-to articles and the author is a top contributor to the MDM Forum linked above </li>
<li><a href="http://technet.microsoft.com/en-us/library/dd261783.aspx">MDM Product Documentation</a> – lots of content not in the download versions! There’s a good chance you’ll spend a lot of time in the <a href="http://technet.microsoft.com/en-us/library/dd261770.aspx">troubleshooting</a> section especially. </li>
</ul>
<p><strong>Prerequisites &amp; Tools</strong></p>
<p>As I worked through the documentation and virtual implementation (using Hyper-V of course) I started compiling an ISO containing all of the install files, tools, and prerequisites. Here’s pretty much everything that I ended up collecting. You’ll probably need most of them so you might as well download them ahead of time!</p>
<ul>
<li><a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=3d6f581e-c093-4b15-ab0c-a2ce5bffdb47&amp;displaylang=en">Windows Mobile 6.1 Emulator Images</a> </li>
<li><a href="http://technet.microsoft.com/en-us/scmdm/cc304591.aspx">System Center Mobile Device Manager Resource Kit Tools</a> </li>
<li><a href="http://technet.microsoft.com/en-us/scmdm/cc304592.aspx">System Center Mobile Device Manager Product Documentation</a> </li>
<li><a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=9e641c34-6f7f-404d-a04b-dc09f8141141&amp;DisplayLang=en">ActiveSync 4.5</a> </li>
<li>Microsoft Windows Mobile Device Center 6.1 for Windows Vista: <a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=46f72df1-e46a-4a5f-a791-09f07aaa1914&amp;displaylang=en">32-bit</a>, <a href="http://www.microsoft.com/downloads/details.aspx?familyid=4F68EB56-7825-43B2-AC89-2030ED98ED95&amp;displaylang=en">64-bit</a> (can be installed on Server 2008 and Server 2008 R2 RC to get ActiveSync-like capabilities) </li>
<li><a href="http://www.microsoft.com/downloads/details.aspx?familyid=0a6d4c24-8cbd-4b35-9272-dd3cbfc81887&amp;displaylang=en">Group Policy Management Console with Service Pack 1</a> </li>
<li><a href="http://www.microsoft.com/downloads/details.aspx?familyid=DB70824D-ABAE-4A92-9AA2-1F43C0FA49B3&amp;displaylang=en">Microsoft Baseline Configuration Analyzer</a> </li>
<li>MMC 3.0: <a href="http://www.microsoft.com/downloads/details.aspx?familyid=61FC1C66-06F2-463C-82A2-CF20902FFAE0&amp;displaylang=en">Windows XP</a>, <a href="http://www.microsoft.com/downloads/details.aspx?familyid=4C84F80B-908D-4B5D-8AA8-27B962566D9F&amp;displaylang=en">Windows Server 2003</a>, <a href="http://www.microsoft.com/downloads/details.aspx?familyid=B65B9B17-5C6D-427C-90AA-7F814E48373B&amp;displaylang=en">Windows Server 2003 x64 Edition</a> </li>
<li><a href="http://www.microsoft.com/windowsserver2003/technologies/management/powershell/download.mspx">PowerShell 1.0</a> </li>
<li><a href="http://www.microsoft.com/downloads/details.aspx?familyid=E7D661BA-DC95-4EB3-8916-3E31340DDC2C&amp;displaylang=en">Microsoft Report Viewer Redistributable 2005 SP1</a> </li>
<li><a href="http://www.microsoft.com/downloads/details.aspx?familyid=F87B4C5E-4161-48AF-9FF8-A96993C688DF&amp;displaylang=en">Windows Server Update Services 3.0 SP1</a> </li>
<li>Microsoft .NET Framework 2.0 Service Pack 1: <a href="http://www.microsoft.com/downloads/details.aspx?familyid=79BC3B77-E02C-4AD3-AACF-A7633F706BA5&amp;displaylang=en">x86</a>, <a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=029196ED-04EB-471E-8A99-3C61D19A4C5A&amp;displaylang=en">x64</a> </li>
<li><a href="http://www.microsoft.com/downloads/details.aspx?familyid=081c6401-49d4-4506-a03b-c41bc76c2f51&amp;displaylang=en">Windows Mobile Network Analyzer PowerToy</a> </li>
</ul>
<p><strong>Non-Microsoft Tools</strong></p>
<ul>
<li><a href="http://mobilitydojo.net/2008/10/09/using-a-hosts-file-on-windows-mobile/">Hosts File Editor for Windows Mobile</a> </li>
<li><a href="http://www.cam.com/vxutil.html">vxUtil Network Utilities for Windows Mobile</a> (ping, tracert, DNS lookup, etc) </li>
<li><a href="http://ceregeditor.mdsoft.pl/index.php?id=3&amp;lang=en">CeRegEditor</a> – Windows Mobile registry editor </li>
<li><a href="http://www.wireshark.org/download.html">Wireshark</a> – nice free network protocol analyzer (for when you really need to know if the device is talking to the gateway, etc) </li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://systemcenterideas.com/2009/07/mobile-device-manager-resources/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mobile Device Manager Best Practices Analyzer</title>
		<link>http://systemcenterideas.com/2009/07/mobile-device-manager-best-practices-analyzer/</link>
		<comments>http://systemcenterideas.com/2009/07/mobile-device-manager-best-practices-analyzer/#comments</comments>
		<pubDate>Sat, 18 Jul 2009 14:37:55 +0000</pubDate>
		<dc:creator>Chad Ingles</dc:creator>
				<category><![CDATA[Mobile Device Manager]]></category>

		<guid isPermaLink="false">http://systemcenterideas.com/?p=8</guid>
		<description><![CDATA[
Simplifying mobile device management is not so simple&#8230; I recently had the challenging experience of designing and implementing a Microsoft System Center Mobile Device Manager 2008 SP1 solution. If you&#8217;ve worked with the product then you know that the Best Practices Analyzer (BPA) is an invaluable tool to determine the answer to the inevitable question, &#8220;Why the [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><img class="aligncenter size-full wp-image-12" title="Simplifying mobile device management is not so simple!" src="http://systemcenterideas.com/wp-content/uploads/2009/07/SCMDM-banner12.jpg" alt="Simplifying mobile device management is not so simple!" width="510" height="63" /></p>
<p>Simplifying mobile device management is not so simple&#8230; I recently had the challenging experience of designing and implementing a <a href="http://www.microsoft.com/systemcenter/mobile/default.mspx">Microsoft System Center Mobile Device Manager 2008 SP1</a> solution. If you&#8217;ve worked with the product then you know that the <a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=e233f84f-9d96-4b33-80b1-fd563c4fb241&amp;displaylang=en">Best Practices Analyzer</a> (BPA) is an invaluable tool to determine the answer to the inevitable question, &#8220;Why the $@#% is this thing not *%&amp;# working!&#8221;.</p>
<p>The first step in runing the BPA is to enter the servers that are part of the installation and verify connectivity. In this case the connectivity check for the Gateway Server was returning &#8220;Machine is unreachable&#8221;. Ok, no problem, checking the <a href="http://download.microsoft.com/download/a/a/5/aa5526b6-a24d-4782-b5a8-f186c43179ef/MDM_SP1_Planning.doc">MDM Planning Guide</a> shows that we need TCP 443 open between the Device Management Server and the Gateway Server. We assumed the BPA would validate connectivity using the ports listed in the planning document since the Gateway is typically not domain joined and lives in the DMZ blocked on all sides by firewalls.</p>
<p>That&#8217;s not the case!</p>
<p>To get the BPA to validate connectivity to the Gateway server you will need to allow ICMP/PING to through your firewall to the server. After this the pre and post-deployment analyses will use the specified ports.</p>
<p>Once you&#8217;ve successfully implemented MDM you can deny ICMP/PING on your firewall as you normally would.</p>
]]></content:encoded>
			<wfw:commentRss>http://systemcenterideas.com/2009/07/mobile-device-manager-best-practices-analyzer/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic page generated in 0.960 seconds. -->
<!-- Cached page generated by WP-Super-Cache on 2010-03-10 00:32:17 -->
<!-- Compression = gzip -->