<?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>Xtreme Deployment</title>
	<atom:link href="http://deployment.xtremeconsulting.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://deployment.xtremeconsulting.com</link>
	<description>Join Xtreme Consulting&#039;s Microsoft Deployment Toolkit experts for discussion and solution sharing</description>
	<lastBuildDate>Sun, 13 May 2012 12:49:19 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='deployment.xtremeconsulting.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Xtreme Deployment</title>
		<link>http://deployment.xtremeconsulting.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://deployment.xtremeconsulting.com/osd.xml" title="Xtreme Deployment" />
	<atom:link rel='hub' href='http://deployment.xtremeconsulting.com/?pushpress=hub'/>
		<item>
		<title>Deploying Silverlight Applications (XAP)</title>
		<link>http://deployment.xtremeconsulting.com/2012/02/17/deploying-silverlight-applications-xap/</link>
		<comments>http://deployment.xtremeconsulting.com/2012/02/17/deploying-silverlight-applications-xap/#comments</comments>
		<pubDate>Fri, 17 Feb 2012 19:01:58 +0000</pubDate>
		<dc:creator>Micah Rowland</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/?p=451</guid>
		<description><![CDATA[It has been far too long since I last wrote and I thought I&#8217;d address a new type of application to deploy: Out-of-Browser Silverlight applications. The Quest A customer recently decided to spruce up its tablet/slate fleet by including some simple third-party Silverlight applications. These applications are normally downloaded and installed using a web browser. So [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=451&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>It has been far too long since I last wrote and I thought I&#8217;d address a new type of application to deploy: Out-of-Browser Silverlight applications.</p>
<h1>The Quest</h1>
<p>A customer recently decided to spruce up its tablet/slate fleet by including some simple third-party Silverlight applications. These applications are normally downloaded and installed using a web browser. So the question was raised, &#8220;Can we install this programatically as part of the imaging process?&#8221; My interest was piqued and I embarked on my foray into Silverlight deployment.</p>
<p>We&#8217;ll use the Fandango Windows Slate located (for now) at <a href="http://images.fandango.com/mobile/slate/">http://images.fandango.com/mobile/slate/</a> as our example.</p>
<p>Upon navigating to the above web address, the site checks to see if the application has already been installed. If not, the user is prompted to Tap to Install, a simple feat to accomplish if you have fingers.  After tapping the prompt, a security warning dialog box appears and after a short countdown allows the installation by clicking/tapping the Install button.</p>
<p>Breaking out Sysinternals Process Monitor and filtering the data reveals the Silverlight.Configuration.exe, a prime suspect. A quick right-click Properties action and a tap on the Process tab gives us a place to start. The command-line being executed is:</p>
<p>&#8220;C:\Program Files (x86)\Microsoft Silverlight\4.0.60831.0\Silverlight.Configuration.exe&#8221; -installtrustedApp 3835182041.images.fandango.com 231aa8</p>
<p>The next step was to see if this command alone would install the application. Uninstall, cmd, paste, enter. No error message&#8230; but no program in the start menu and nothing in Programs and Features. A dead end? What could I be missing?</p>
<p>Time to break out Sysinternals Process Explorer. Let&#8217;s watch the install happen real-time and see what other related parent and/or child processes may be involved. Processes launch and close relatively quickly in Process Explorer, so to give myself the extra time I may need, I accessed the Difference Highlighting Duration dialog from the Options menu. Unfortunately this value is limited from 0-9 so 9 will have to work. Uninstall, then, side by side, reinstall the app and watch.</p>
<p>Internet Explore launches a Silverlight.Configuration.exe child process, which launches a second Silverlight.Configuration.exe child process, which launches a sllauncher.exe child proces, which launches a second sllauncher.exe child process. A new suspect! Inspecting the properties of the child process reveals this command-line:</p>
<p>&#8220;C:\Program Files (x86)\Microsoft Silverlight\sllauncher.exe&#8221; 3835182041.images.fandango.com</p>
<p>Very similar to the above Silverlight.Configuration.exe command-line. Let&#8217;s search for this sllauncher.exe and see if it has some command line arguments we can use. A quick search reveals the perfect article: <a href="http://www.codeproject.com/Articles/75054/How-to-Install-a-Silverlight-Out-of-Browser-Applic">How to Install a Silverlight Out-of-Browser Applications (XAP) Silently</a></p>
<p>JACKPOT? A quick read reveals a sample scenario involving deploying your own in-house developed XAP&#8230; Not quite what we have in mind but it&#8217;s a great start. The sample command-line they use is:</p>
<p>&#8220;C:\Program Files\Microsoft Silverlight\sllauncher.exe&#8221; /install:&#8221;C:\MySilverlightApps\Silverlight4.OOB.ChromelessWindow.Demo.xap&#8221; /origin:http://www.kunal-chowdhury.com/private/apps/ClientBin/Silverlight4.OOB.ChromelessWindow.Demo.xap /shortcut:desktop+startmenu /overwrite</p>
<p>Not a bad start, but not perfect for our needs. We don&#8217;t have the xap file that the website is using nor do we know the origin of the file. Now what? Let&#8217;s pop back open Sysinternals Process Monitor and take a look at the file changes during install, maybe we can find a locally stored copy?  Pause and clear the capture, set the filters back to default, add a filter to include only sllauncher.exe processes, uninstall the app, start capture, install the app. Now filter only file operations and&#8230; nothing. Let&#8217;s try Silverlight.Configuration.exe&#8230; nope. Let&#8217;s try path contains xap&#8230; BINGO! An application.xap file in the folder 3835182041.images.fandango.com. We&#8217;ve seen that path before. The full path to that xap is:</p>
<p>C:\Users\Micah\AppData\Local\Microsoft\Silverlight\OutOfBrowser\3835182041.images.fandango.com</p>
<p>Ok, what have we got? Let&#8217;s see, we have an icon, a png of the icon, the application.xap file, an index.html file and 3 un-extensioned files: installstate, metadata, and state. Well it&#8217;s a good bet that the application.xap file is the source we need&#8230; what about the origin parameter? The installstate and state files are empty (probably flag files), but the metadata is the jackpot we&#8217;ve been waiting for:</p>
<p><strong>ShortcutName=Fandango Slate Application</strong><br />
<strong>LaunchPath=C:\Users\Micah\AppData\Local\Microsoft\Silverlight\OutOfBrowser\3835182041.images.fandango.com\index.html</strong><br />
<strong>CustomIcon=1</strong><br />
<strong>TrimmedSourceDomain=images.fandango.com</strong><br />
<strong>TrimmedTitle=Fandango Slate Application</strong><br />
<strong>TrimmedName=Fandango Slate Application</strong><br />
<strong>ElevatedPermissions=2147483647</strong><br />
<strong>XapLastModified=Tue, 02 Aug 2011 23:16:17 GMT</strong><br />
<strong>EnableGPUAcceleration=True</strong><br />
<strong>WindowStartupLocation=0</strong><br />
<strong>WindowTop=0</strong><br />
<strong>WindowLeft=0</strong><br />
<strong>WindowWidth=1367</strong><br />
<strong>WindowStyle=1</strong><br />
<strong>WindowHeight=767</strong><br />
<strong>SourceDomain=images.fandango.com</strong><br />
<strong>OriginalSourceUri=http://images.fandango.com/mobile/slate/ClientBin/Fandango.Slate.xap</strong><br />
<strong>FinalAppUri=http://images.fandango.com/mobile/slate/ClientBin/Fandango.Slate.xap</strong><br />
<strong>RuntimeVersion=4.0.50826.0</strong><br />
<strong>AppID=3835182041.images.fandango.com</strong><br />
<strong>Description=Fandango Slate Application on your desktop; at home, at work or on the go.</strong><br />
<strong>Title=Fandango Slate Application</strong><br />
<strong>Name=Fandango Slate Application</strong></p>
<p>OriginalSourceUri looks PERFECT. Just to make sure we really have the original XAP file, let&#8217;s download that XAP, maybe the xap file changes when downloaded and installed (ok maybe not, but we can&#8217;t be too safe). Copy pasting that address into IE gives us a downloaded copy!</p>
<p>As far as the remaining two parameters, shortcut and overwrite: The overwrite parameter is not needed for MDT deployments or if you are sure the app has never been deployed before. Adding overwrite prevents an error from being thrown if the application already is installed. The shortcut parameter can be left out or set to one of the following:</p>
<ol>
<li>desktop</li>
<li>startmenu</li>
<li>desktop+startmenu</li>
</ol>
<p>Let&#8217;s roll it all together: Place the xap file in a folder and our local command-line is as follows:</p>
<p>&#8220;C:\Program Files (x86)\Microsoft Silverlight\sllauncher.exe&#8221; <strong>/install:</strong>&#8220;Fandango.Slate.xap&#8221;<strong> /origin:</strong>http://images.fandango.com/mobile/slate/ClientBin/Fandango.Slate.xap <strong>/shortcut:</strong>startmenu /overwrite</p>
<h1>Caveats</h1>
<p>Silverlight 5 was released on December 9, 2011 and has a 64-bit installer. This means that if you are installing Silverlight 5, the path to sllauncher will always be C:\Program Files, regardless of the OS architecture, making our job simpler, one command-line for all <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><span style="color:#000000;">These applications are installed on a per-user basis, so for MDT deployment, make sure copyprofile=true.</span></p>
<p>Some Out-of-Browser Silverlight apps may require Native Extensions For Microsoft Silverlight which you can find <a href="http://archive.msdn.microsoft.com/nesl">here</a> as an msi download. Install the extensions before deploying the apps to avoid dependency issues.</p>
<h1><strong>Summary</strong></h1>
<p>So, to summarize:</p>
<ol>
<li>On a test machine, download and install the desired Silverlight Out-of-Browser application</li>
<li>Navigate to %LOCALAPPDATA%\Microsoft\Silverlight\OutOfBrowser and open the appropriate application folder.</li>
<li>Open the metadata file in notepad and copy the OriginalSourceUri path.</li>
<li>Paste the path the address bar of your browser and download the XAP file.</li>
<li>If using MDT, copy the XAP to a folder and import.</li>
<li>Use the command-line syntax as follows:
<ul>
<li>64-bit OS: &#8220;%ProgramFiles(x86)%\Microsoft Silverlight\sllauncher.exe&#8221; /install:<em>[XAP FILE]</em> /origin:<em>[ORIGINALSOURCEURI PATH]</em> /shortcut:<em>[DESIRED SETTING]</em> /overwrite</li>
<li>32-bit OS: &#8220;%ProgramFiles%\Microsoft Silverlight\sllauncher.exe&#8221; /install:<em>[XAP FILE]</em> /origin:<em>[ORIGINALSOURCEURI PATH]</em> /shortcut:<em>[DESIRED SETTING]</em> /overwrite</li>
</ul>
</li>
</ol>
<p>Credit: I ran across a great article on <a href="http://timheuer.com/blog/archive/2010/03/25/using-sllauncher-for-silent-install-silverlight-application.aspx">Tim Heuer&#8217;s blog </a>while proofing this draft that I failed to locate when it was originally started and would be remiss not to mention. It&#8217;s a great echo of what I&#8217;ve covered here but doesn&#8217;t cover third-party apps.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/451/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/451/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/451/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/451/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/451/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/451/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/451/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/451/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/451/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/451/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/451/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/451/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/451/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/451/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=451&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2012/02/17/deploying-silverlight-applications-xap/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e5d625f8daa701b969ef654f169de4e5?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">ioamnesia</media:title>
		</media:content>
	</item>
		<item>
		<title>Windows 7 Notification Area Automation &#8211; Falling Back Down the Binary Registry Rabbit Hole</title>
		<link>http://deployment.xtremeconsulting.com/2011/07/08/windows-7-notification-area-automation-falling-back-down-the-binary-registry-rabbit-hole/</link>
		<comments>http://deployment.xtremeconsulting.com/2011/07/08/windows-7-notification-area-automation-falling-back-down-the-binary-registry-rabbit-hole/#comments</comments>
		<pubDate>Fri, 08 Jul 2011 18:40:19 +0000</pubDate>
		<dc:creator>Micah Rowland</dc:creator>
				<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[Windows 7]]></category>

		<guid isPermaLink="false">http://deployment.xtremeconsulting.com/?p=441</guid>
		<description><![CDATA[Once more unto the breach dear friends. After countless hours of searching for a programmatic way to modify the notification settings of the task tray icons, I came to the conclusion that there are many questions and no answers out there. I embarked once again on the fun task of reverse engineering a binary registry [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=441&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Once more unto the breach dear friends.</p>
<p>After countless hours of searching for a programmatic way to modify the notification settings of the task tray icons, I came to the conclusion that there are many questions and no answers out there. I embarked once again on the fun task of reverse engineering a binary registry setting to change a setting that should be pretty straight forward but, alas, is not. So let&#8217;s dive in shall we:</p>
<p>The notification settings for the task tray are stored in the registry at HKCU\Software\Classes\Local Settings\Microsoft\Windows\CurrentVersion\TrayNotify in the IconStreams value as a binary registry key. Luckly for us, the organization of the key is not nearly as hard to understand as the <a href="http://deployment.xtremeconsulting.com/2010/09/24/windows-7-ie8-favorites-bar-organization-a-descent-into-binary-registry-storage/">Favorites Bar</a>. The binary stream begins with a 20 byte header followed by X number of 1640 byte items where X is the number of items that have notification settings. Each 1640 byte block is comprised of at least (one of the sections is not fully decoded so it may be made up of 2 or more sections) 5 fixed byte width sections as follows:</p>
<ul>
<li>528 bytes &#8211; Path to the executable</li>
<li>4 bytes &#8211; Notification visibility setting</li>
<li>512 bytes &#8211; Last visible tooltip</li>
<li>592 bytes - Unknown (Seems to have a second tool-tip embeded in it but the starting position in the block changes)</li>
<li>4 bytes &#8211; ID?</li>
</ul>
<p>For the purposes of my automation, the first two blocks will serve very nicely.</p>
<pre>param(
    [Parameter(Mandatory=$true,HelpMessage='The name of the program')][string]$ProgramName,
    [Parameter(Mandatory=$true,HelpMessage='The setting (2 = show icon and notifications 1 = hide icon and notifications, 0 = only show notifications')]
        [ValidateScript({if ($_ -lt 0 -or $_ -gt 2) { throw 'Invalid setting' } return $true})]
        [Int16]$Setting
    )

$encText = New-Object System.Text.UTF8Encoding
[byte[]] $bytRegKey = @()
$strRegKey = ""
$bytRegKey = $(Get-ItemProperty $(Get-Item 'HKCU:\Software\Classes\Local Settings\Software\Microsoft\Windows\CurrentVersion\TrayNotify').PSPath).IconStreams
for($x=0; $x -le $bytRegKey.Count; $x++)
{
    $tempString = [Convert]::ToString($bytRegKey[$x], 16)
    switch($tempString.Length)
    {
        0 {$strRegKey += "00"}
        1 {$strRegKey += "0" + $tempString}
        2 {$strRegKey += $tempString}
    }
}
[byte[]] $bytTempAppPath = @()
$bytTempAppPath = $encText.GetBytes($ProgramName)
[byte[]] $bytAppPath = @()
$strAppPath = ""

Function Rot13($byteToRot)
{
    if($byteToRot -gt 64 -and $byteToRot -lt 91)
    {
        $bytRot = $($($byteToRot - 64 + 13) % 26 + 64)
        return $bytRot
    }
    elseif($byteToRot -gt 96 -and $byteToRot -lt 123)
    {
        $bytRot = $($($byteToRot - 96 + 13) % 26 + 96)
        return $bytRot
    }
    else
    {
        return $byteToRot
    }
}

for($x = 0; $x -lt $bytTempAppPath.Count * 2; $x++)
{
    If($x % 2 -eq 0)
    {
        $curbyte = $bytTempAppPath[$([Int]($x / 2))]
            $bytAppPath += Rot13($curbyte)

    }
    Else
    {
        $bytAppPath += 0
    }
}

for($x=0; $x -lt $bytAppPath.Count; $x++)
{
    $tempString = [Convert]::ToString($bytAppPath[$x], 16)
    switch($tempString.Length)
    {
        0 {$strAppPath += "00"}
        1 {$strAppPath += "0" + $tempString}
        2 {$strAppPath += $tempString}
    }
}
if(-not $strRegKey.Contains($strAppPath))
{
    Write-Host Program not found. Programs are case sensitive.
    break
}

[byte[]] $header = @()
$items = @{}
for($x=0; $x -lt 20; $x++)
{
    $header += $bytRegKey[$x]
}

for($x=0; $x -lt $(($bytRegKey.Count-20)/1640); $x++)
{
    [byte[]] $item=@()
    $startingByte = 20 + ($x*1640)
    $item += $bytRegKey[$($startingByte)..$($startingByte+1639)]
    $items.Add($startingByte.ToString(), $item)
}

foreach($key in $items.Keys)
{
$item = $items[$key]
    $strItem = ""
    $tempString = ""

    for($x=0; $x -le $item.Count; $x++)
    {
        $tempString = [Convert]::ToString($item[$x], 16)
        switch($tempString.Length)
        {
            0 {$strItem += "00"}
            1 {$strItem += "0" + $tempString}
            2 {$strItem += $tempString}
        }
    }
    if($strItem.Contains($strAppPath))
    {
        Write-Host Item Found with $ProgramName in item starting with byte $key
            $bytRegKey[$([Convert]::ToInt32($key)+528)] = $setting
            Set-ItemProperty $($(Get-Item 'HKCU:\Software\Classes\Local Settings\Software\Microsoft\Windows\CurrentVersion\TrayNotify').PSPath) -name IconStreams -value $bytRegKey
    }
}</pre>
<p>So what are we doing here. First we ask for two commandline arguments, the name of the program (normally the executable of the program) which is case sensitive, and the setting value. The possible settings values are:</p>
<ul>
<li>0 = only show notifications</li>
<li>1 = hide icon and notifications</li>
<li>2 = show icon and notifications</li>
</ul>
<p>We then read in the current value from the registry and store it in a byte array, then create a string representation of the byte array to search for the application in.</p>
<p>We then encode the application name supplied in both a byte array and a string as with the registry value, then we search for the application in the registry key. If not found, we throw an error and drop out. Otherwise we continue.</p>
<p>We then store the header in its own byte array (we don&#8217;t use this header but if we need it in the future, we&#8217;ve already got the code to segregate it). After that, we loop through the remaining bytes, 1640 bytes at a time, and store each block in it&#8217;s own array which in turn is placed in a hash table using the begining byte position as its key.</p>
<p>Finally we loop through each key and search again for the application. If it is found, we set the 529th byte equal to the setting value passed in and then write the byte array back into the registry.</p>
<p>The astute script reader and novice cryptographer will notice our old friend ROT13. It turns out that Microsoft didn&#8217;t want us playing with this key so they used the unbreakable ROT13 algorithm on its contents. ROT13 is a mathematical substitution cypher (it&#8217;s much simpler than it sounds) which advances each alpha character 13 letters forward so A=N B=O C=P D=Q and so on. I&#8217;ve created a function that handles this in a case sensitive way and call it as needed.</p>
<p>So we have our script, but there&#8217;s one last wrinkle. The IconStreams registry value is read into memory by Explorer.exe when explorer loads and all changes to the notification area are stored in memory, then written to the registry on shutdown. This means that if we run our script, not only will we see no results right away, those results will be overwritten with the current settings when we restart the computer. Not good. It&#8217;s a simple fix though. We launch our script from a batch file and we execute <strong>taskkill /im explorer.exe /f </strong>then we execute our script, then we restart explorer.exe.</p>
<p>That&#8217;s pretty much it. No need for rainbow diagrams of nested dynamically sized items this time.</p>
<p>I will be cleaning up the script and updating this post later with additional information (default user hive info). Stay tuned!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/441/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/441/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/441/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/441/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/441/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/441/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/441/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/441/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/441/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/441/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/441/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/441/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/441/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/441/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=441&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2011/07/08/windows-7-notification-area-automation-falling-back-down-the-binary-registry-rabbit-hole/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e5d625f8daa701b969ef654f169de4e5?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">ioamnesia</media:title>
		</media:content>
	</item>
		<item>
		<title>New Tool: Advanced Format Drives</title>
		<link>http://deployment.xtremeconsulting.com/2011/04/29/new-tool-advanced-format-drives/</link>
		<comments>http://deployment.xtremeconsulting.com/2011/04/29/new-tool-advanced-format-drives/#comments</comments>
		<pubDate>Sat, 30 Apr 2011 06:48:12 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[Troubleshooting]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Windows 7]]></category>

		<guid isPermaLink="false">https://tmintner.wordpress.com/?p=436</guid>
		<description><![CDATA[Been slacking lately (Working on MDT 2012). Advanced format drives are coming! http://en.wikipedia.org/wiki/Advanced_Format This hasn’t been much of a problem until recently, now that most of the major hard drive manufacturers have started to switch over to full Advanced Format. When you have an Advanced format drive, you should format with an operating system that [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=436&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><em>Been slacking lately (Working on MDT 2012).</em></p>
<h2>Advanced format drives are coming!</h2>
<p><a title="http://en.wikipedia.org/wiki/Advanced_Format" href="http://en.wikipedia.org/wiki/Advanced_Format">http://en.wikipedia.org/wiki/Advanced_Format</a></p>
<p>This hasn’t been much of a problem until recently, now that most of the major hard drive manufacturers have started to switch over to full Advanced Format.</p>
<p>When you have an Advanced format drive, you should format with an operating system that can format the drive aligned on the advanced 4k sectors rather than the 512 byte sectors found on older drives.</p>
<p>If  you do not format an “Advanced Format” disk aligned on the 4k sectors, then you may experience performance degradation. Windows 7 SP1 has been updated to address Advanced Format Drives, and WinPE 3.1, contained in WAIK 3.1 has been updated as well.</p>
<p>But how do you know if you need WinPE 3.1?</p>
<p>I have just written a new tool: IsAdvancedFormat.exe, that can detect if there are *any* advanced format drives present on the local machine. It will return errorlevel 0 if there are no advanced format drives, and errorlevel 42 if there *are* advanced format drives.</p>
<p>Source code is included.</p>
<h2>Sample Output!</h2>
<pre>C:\&gt; IsAdvancedFormat.exe
Enumerate all detect all Advanced Format Drives.
Enumerator: IDE Found: Maxtor 6L160M0
  Physical sector size is 512 bytes.
Enumerator: IDE Found: Maxtor 6L160M0
  Physical sector size is 512 bytes.
Enumerator: IDE Found: WDC WD10EADS-11M2B2
  Emulated sector size is 512 bytes.
  Physical sector size is 4096 bytes.
C:\&gt; @echo %ErrorLevel%
42</pre>
<h2>Location!</h2>
<p><a href="http://cid-5407b03614346a99.office.live.com/self.aspx/Blog/IsAdvancedFormat.zip">http://cid-5407b03614346a99.office.live.com/self.aspx/Blog/IsAdvancedFormat.zip</a></p>
<h2>Update! (7/24/2011)</h2>
<p>It appears that Dell has taken this tool and enhanced it! Their new tool can detect if an Advanced Format drive was partitioned/formatted incorrectly.  Cool Stuff.</p>
<p>Since Dell&#8217;s tool is now a superset of my tool, I would recomend theirs first:  <a href="http://del.ly/afhdd" rel="nofollow" target="_blank">http://del.ly/afhdd</a> </p>
<p>I will continue to provide my tool here as a reference.</p>
<p>Thanks Dell! (and thanks Warren Byle)</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/436/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/436/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/436/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/436/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/436/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/436/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/436/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/436/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/436/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/436/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/436/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/436/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/436/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/436/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=436&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2011/04/29/new-tool-advanced-format-drives/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>
	</item>
		<item>
		<title>Duplicate Driver Tool.</title>
		<link>http://deployment.xtremeconsulting.com/2011/01/10/duplicate-driver-tool/</link>
		<comments>http://deployment.xtremeconsulting.com/2011/01/10/duplicate-driver-tool/#comments</comments>
		<pubDate>Tue, 11 Jan 2011 04:28:00 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[MDT 2010]]></category>
		<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[Troubleshooting]]></category>

		<guid isPermaLink="false">https://tmintner.wordpress.com/?p=426</guid>
		<description><![CDATA[Overview I just created a PowerShell script that can automatically detect duplicate drivers within a MDT Deployment share. For those of you who are not manually associating each driver to a specific Make and Model, this can help in trying to find drivers that are duplicates, or drivers that have been replaced by newer versions. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=426&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<h2><strong>Overview</strong></h2>
<p>I just created a PowerShell script that can automatically detect duplicate drivers within a MDT Deployment share. For those of you who are not manually associating each driver to a specific Make and Model, this can help in trying to find drivers that are duplicates, or drivers that have been replaced by newer versions.</p>
<p>Typically having more than one driver in your MDT database won&#8217;t cause any errors during OS Installation, Windows will automatically determine the best driver out of all possible matches, and install only that one. However, as a Driver Database gets larger and larger, the MDT console may operate slower, and the installation process will also slow as MDT copies more possible driver matches.</p>
<p>This script is not a fully automated process. The output of the script is in text format, and the administrator must manually remove the drivers marked as duplicate/deprecated.</p>
<h2>Syntax</h2>
<p>…\DupeDriverTool.ps1 [[-<strong>SelectionProfile</strong>] &lt;String&gt;] [[-DPDrive] &lt;String&gt;] [[-<strong>DPShare</strong>] &lt;String&gt;] [-WhatIf] [-Confirm] [-<strong>Verbose</strong>]</p>
<p><strong>DPShare</strong> &#8211; By default, the script will use the First Deployment share found on your local MDT Console. Override using this parameter.</p>
<p><strong>SelectionProfile</strong> &#8211; By default the script will use the &#8220;Everything&#8221; Selection Profile Group, override using this parameter.</p>
<p><strong>Verbose </strong>- Use Verbose to display more debugging information and to display a list of OK drivers at the end of the report.</p>
<p>Each driver package within the drivers.xml file looks something like:</p>
<table border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td width="638" valign="top"><span style="font-family:Courier New;font-size:x-small;">&lt;driver guid=&#8221;{1d30e8a3-f9ca-479f-bc89-9c929c9f647f}&#8221; enable=&#8221;True&#8221;&gt;<br />
</span><span style="font-family:Courier New;font-size:x-small;">   &lt;Name&gt;Intel System dmi_pci.inf 7.0.0.1011&lt;/Name&gt;<br />
</span><span style="font-family:Courier New;font-size:x-small;">&lt;…&gt;<br />
</span><span style="font-family:Courier New;font-size:x-small;">   &lt;Hash&gt;0604A3D569DCBA7CC0EFEAE6ADB0D7A69DC40D2A&lt;/Hash&gt;<br />
</span><span style="font-family:Courier New;font-size:x-small;">   &lt;Version&gt;7.0.0.1011&lt;/Version&gt;<br />
</span><span style="font-family:Courier New;font-size:x-small;">   &lt;Date&gt;09/15/2006&lt;/Date&gt;<br />
</span><span style="font-family:Courier New;font-size:x-small;">   &lt;WHQLSigned&gt;True&lt;/WHQLSigned&gt;<br />
</span><span style="font-family:Courier New;font-size:x-small;">   &lt;PNPId&gt;*PNP0103&lt;/PNPId&gt;<br />
</span><span style="font-family:Courier New;font-size:x-small;">   &lt;PNPId&gt;PCI\VEN_8086&amp;amp;DEV_244E&lt;/PNPId&gt;<br />
</span><span style="font-family:Courier New;font-size:x-small;">   &lt;PNPId&gt;PCI\VEN_8086&amp;amp;DEV_2448&lt;/PNPId&gt;<br />
</span><span style="font-family:Courier New;font-size:x-small;">&lt;/driver&gt;</span></td>
</tr>
</tbody>
</table>
<h2><strong>Process Flow</strong></h2>
<p>The driver dupe tool runs as a PowerShell script, and must run on a machine with MDT 2010, or MDT 2010 Update 1 installed, as it uses some of the MDT PowerShell providers to manage the drivers.</p>
<p>The script will go through all driver packages and PnPID&#8217;s, looking for instances where two driver packages have matching PnPID&#8217;s. If we can do an intelligent job of determining which of the matching drivers contain the best version of the driver, we no longer need to maintain the drivers for the old drivers.</p>
<p>At the end of processing, the script will display a list of driver packages that are &#8220;safe&#8221; for removal. These are drivers where *<strong>all</strong>* PnPID&#8217;s are superseded by other &#8220;better/newer&#8221; drivers.</p>
<h2><strong>The Rules</strong></h2>
<ul>
<li>Signed drivers are always preferred over unsigned drivers.</li>
<li>Signed driver dates are used to compare drivers, not driver versions.</li>
<li>Never modify any part of a Signed Driver, including the *.inf file. If you do so, the driver will no longer be signed.</li>
<li>It is always assumed that newer drivers are better than older drivers. If not, then you will need to manually keep track of which drivers are better.</li>
<li>Only driver packages where *<strong>all</strong>* PnPID&#8217;s are superdeded by better drivers are marked for removal.</li>
<li>Use the Verbose switch to see more detail while processing.</li>
</ul>
<h2><strong>Future</strong></h2>
<ul>
<li>Find Out of Box Drivers that exist within the OS as in-box drivers.</li>
<li>Find Out of Box Drivers that exist within WinPE.</li>
<li>Automatically delete the drivers on the machine if dupes are found.</li>
<li>No SCCM support now, only MDT 2010.</li>
</ul>
<h2>Location</h2>
<p><a href="http://cid-5407b03614346a99.office.live.com/self.aspx/Blog/DupeDriverTool.zip">http://cid-5407b03614346a99.office.live.com/self.aspx/Blog/DupeDriverTool.zip</a></p>
<p>Keith</p>
<address><a href="http://keithga.com"><span style="color:#993300;">Keith Garner</span></a><span style="color:#993300;"> is a Deployment Specialist with </span><a href="http://deployment.xtremeconsulting.com/"><span style="color:#993300;">Xtreme Consulting Group</span></a></address>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/426/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/426/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/426/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/426/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/426/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/426/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/426/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/426/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/426/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/426/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/426/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/426/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/426/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/426/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=426&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2011/01/10/duplicate-driver-tool/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>
	</item>
		<item>
		<title>Combining WIM files</title>
		<link>http://deployment.xtremeconsulting.com/2010/12/16/combining-wim-files/</link>
		<comments>http://deployment.xtremeconsulting.com/2010/12/16/combining-wim-files/#comments</comments>
		<pubDate>Fri, 17 Dec 2010 00:11:35 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">https://tmintner.wordpress.com/?p=399</guid>
		<description><![CDATA[I was at a customer site during the past few weeks, and the customer asked about merging WIM files. This company was a Lenovo shop, and they had three main platforms in their inventory, the Thinkpad T410, T410s, and the X201. For technical reasons that I won’t get into here, we decided to create several [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=399&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I was at a customer site during the past few weeks, and the customer asked about merging WIM files. This company was a Lenovo shop, and they had three main platforms in their inventory, the Thinkpad T410, T410s, and the X201.</p>
<p>For technical reasons that I won’t get into here, we decided to create several Model Specific Fat images that could be deployed using SCCM as-is without loading additional Drivers. Unfortunately, when done we had about 8 images, including two base images that contained their common application suite, but did not contain any extra drivers.</p>
<p>When done we had the following x64 images:</p>
<ul>
<li>WIN7ENTX64.base.wim</li>
<li>WIN7ENTX64.t410.wim</li>
<li>WIN7ENTX64.t410s.wim</li>
<li>WIN7ENTX64.x201.wim</li>
</ul>
<p>Each wim was about 4-6 GB in size, all totaled about 21GB for x64.</p>
<h2>WIM files</h2>
<p>WIM files are containers that store other files, similar to the way that a *.zip file or a *.cab file stores other files. Microsoft Windows also provides the ability to “mount” Wim files into an existing File Folder, allowing one to Add/Delete/Modify files in the wim.  This causes problems since modifications of the WIM file can cause fragmentation, just like *.vhd files. Windows gets around this by supplying the imagex.exe /export command. This command will allow the administrator to move the content from one WIM file to another WIM file, and in doing so the new wim file will be de-fragmented!</p>
<p>We can use this imagex.exe /export command to move the contents of one Wim file *into* an existing wim file, the cool thing for us is that ImageX.exe will also check to see if the file already exists in the wim file, and will not add the file in order to save space!</p>
<h2>Example</h2>
<p>In the example case above with the three Lenovo machines and a base image, I decided to start with the base image, and to inject the three other platforms into the base *.wim image:</p>
<p>Imagex.exe /export WIN7ENTX64.t410.wim *   WIN7ENTX64.base.wim &#8220;WIN7ENTX64.DDrive.t410&#8243;</p>
<p>Imagex.exe /export WIN7ENTX64.t410s.wim * WIN7ENTX64.base.wim &#8220;WIN7ENTX64.DDrive.t410s&#8221;</p>
<p>Imagex.exe /export WIN7ENTX64.x201.wim * WIN7ENTX64.base.wim &#8220;WIN7ENTX64.DDrive.x201&#8243;</p>
<p>When I was finished the Base.wim file had increased in size by only 1.5GB, much better than trying to distribute 4 separate *.wim files totalling 20GB</p>
<p>-Keith</p>
<address><a href="http://keithga.com"><span style="color:#993300;">Keith Garner</span></a><span style="color:#993300;"> is a Deployment Specialist with </span><a href="http://deployment.xtremeconsulting.com/"><span style="color:#993300;">Xtreme Consulting Group</span></a></address>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/399/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/399/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/399/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/399/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/399/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/399/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/399/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/399/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/399/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/399/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/399/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/399/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/399/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/399/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=399&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2010/12/16/combining-wim-files/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>
	</item>
		<item>
		<title>MDT Litetouch startup -Super Flow- help;</title>
		<link>http://deployment.xtremeconsulting.com/2010/11/11/mdt-litetouch-startup-super-flow/</link>
		<comments>http://deployment.xtremeconsulting.com/2010/11/11/mdt-litetouch-startup-super-flow/#comments</comments>
		<pubDate>Fri, 12 Nov 2010 04:56:44 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[MDT 2010]]></category>
		<category><![CDATA[Troubleshooting]]></category>
		<category><![CDATA[Windows 7]]></category>

		<guid isPermaLink="false">https://tmintner.wordpress.com/?p=394</guid>
		<description><![CDATA[Someone posted a question on a MDT forum recently: I´m courious about what is happening when you boot your client on the WinPE iso image that is generated when you update the deploymentshare in MDT. So, does a &#8220;superflow&#8221; or other documentation like that exist ? Interesting question, thought I’d write down some of the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=394&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Someone posted a question on a MDT forum recently:</p>
<blockquote><p>I´m courious about what is happening when you boot your client on the WinPE iso image that is generated when you update the deploymentshare in MDT.</p>
<p>So, does a &#8220;superflow&#8221; or other documentation like that exist ?</p></blockquote>
<p>Interesting question, thought I’d write down some of the basics (Things that are interesting to people in the deployment field):</p>
<ul>
<li> The Computer starts up and the BIOS is responsible for selecting which device to boot from. This can be either:<br />
Network (PXE), Hard Disk, USB Flash Drive, or CD-ROM (El-Torito)</li>
<li>When booting off a hard disk or USB Flash Drive, the BIOS will look for an &#8220;Active&#8221; partition, and run the code in the Master Boot Record.</li>
<li>PXE Booting is a different topic…  :^)</li>
<li>When booting from the CD-ROM, the BIOS will kick off the EtfsBoot.com program running in El-Torito No-emulation mode. ETFSBoot.com does two things:
<ul>
<li>Runs the BootFix.bin program – This program will test for the existence of any &#8220;Active&#8221; hard disk partitions on the machine, if found, it will prompt the user to &#8220;Press Any Key to boot from CD or DVD.&#8221; If no &#8220;Active&#8221; partition is found, or the user presses a key, then the next &#8220;BootMgr&#8221; program is run.</li>
<li>Bootmgr – ( In windows XP it was ntldr) Is responsible for management of the other Operating Systems, it reads the \boot\bcd file (a registry hive), and displays a menu to the user. It can launch Windows, WinPE, other Real Mode programs, and even boot Windows from VHD files (for premium versions of windows like Windows Ultimate or Enterprise).</li>
</ul>
</li>
<li>Once the OS has been selected, BootMgr then starts the process of loading all the OS components into memory, when ready it will pass control from Real Mode into the Windows Kernel. The OS will then take over the boot up process and continue loading the rest of the drivers and components. If at this point it can&#8217;t find the hard disk from where it came from, it will Stop BugCheckEx(), with error code 0x0000007B, typically this means the Storage Driver wasn&#8217;t loaded.</li>
<li>In WinPE the process continues by calling WinPEShl.exe. If WinPEShl.exe finds the file WinPEShl.ini, it will parse it. For MDT 2010, the WinPEShl.ini file looks like:</li>
</ul>
<pre>[LaunchApps]
%SYSTEMROOT%\System32\bddrun.exe,/bootstrap</pre>
<ul>
<li>BddRun.exe – Will launch wpeinit.exe. It will also remain in memory and monitor the keyboard for F8 (See: <a href="http://deployment.xtremeconsulting.com/2009/10/29/78/">http://deployment.xtremeconsulting.com/2009/10/29/78/</a> )</li>
<li>WpeInit.exe will start up the network, and other services and parse the unattend.xml file for commands to run. For MDT 2010, the Unattend.xml file looks like:</li>
</ul>
<pre>&lt;?xml version="1.0" encoding="utf-8"?&gt;
…
&lt;Path&gt;wscript.exe X:\Deploy\Scripts\LiteTouch.wsf&lt;/Path&gt;</pre>
<ul>
<li>Litetouch.wsf will then check to see if there are any Task Sequences in progress (is there a c:\minint and/or c:\_SMSTaskSequence\TSEnv.dat file present), and if so execute.</li>
<li>If Litetouch can&#8217;t find any in-progress Task Sequences (NewComputer), it will:
<ul>
<li>Parse the Bootstrap.ini file</li>
<li>Display the Welcome Wizard (unless SkipBDDWelcome is defined)</li>
<li>Parse the CustomSettings.ini file (Typically from the DeployRoot found in the Bootstrap.ini file).</li>
<li>Display the Deployment Wizard (Unless SkipWIzard is defined)</li>
<li>Run the full Task Sequence…</li>
</ul>
</li>
</ul>
<p>&lt;whew&gt;</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/394/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/394/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/394/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/394/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/394/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/394/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/394/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/394/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/394/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/394/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/394/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/394/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/394/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/394/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=394&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2010/11/11/mdt-litetouch-startup-super-flow/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>
	</item>
		<item>
		<title>New Tool: ZTIAppVerify.wsf &#8211; Logs the status of all installed applications.</title>
		<link>http://deployment.xtremeconsulting.com/2010/11/08/new-tool-ztiappverify-wsf-logs-the-status-of-all-installed-applications/</link>
		<comments>http://deployment.xtremeconsulting.com/2010/11/08/new-tool-ztiappverify-wsf-logs-the-status-of-all-installed-applications/#comments</comments>
		<pubDate>Tue, 09 Nov 2010 00:00:34 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[MDT 2010]]></category>
		<category><![CDATA[Troubleshooting]]></category>
		<category><![CDATA[VBscript]]></category>

		<guid isPermaLink="false">https://tmintner.wordpress.com/?p=389</guid>
		<description><![CDATA[Someone posted this question on a E-Mail list today: Subject: Applications log file Hi all, I am working on building a LTI solution for Win7. [… is] there […] a simple solution to create a log file at the end of the deployment phase. This log file must contains a list of all applications installed [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=389&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Someone posted this question on a E-Mail list today:</p>
<blockquote><p><strong>Subject:</strong> Applications log file</p>
<p>Hi all,</p>
<p>I am working on building a LTI solution for Win7. [… is] there […] a simple solution to create a log file at the end of the deployment phase. This log file must contains a list of all applications installed in the task sequence.</p>
<p>It’s possible?</p></blockquote>
<p>It got me thinking, and I realized that I *had* created a script to perform this exact same problem early this year, yet never posted it here to my blog.</p>
<p>So without further delay:  Introducing new tool ZTIAppVerify.wsf!</p>
<h2>Details:</h2>
<p>This script performs two tasks:</p>
<ol>
<li>1. It will enumerate through the Applications specified in the Wizard, the CustomSettings.ini, and/or MDT Database. In other words, it will parse the Applications and the MandatoryApplications list properties and attempt to see if the installation was successful.<br />
How does it determine if the installation was successful?  If you populated the “UninstallKey” when creating your Application in MDT, that Key must then exist in the uninstall registry. For MSI applications, that UnInstallKey is just the Product Key. An Error is generated if the Key is not found (meaning the install was not successful).</li>
<li>The script will also enumerate through all the Uninstall Registry Keys on the local machine:<br />
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\…<br />
This is the list that is populated when you go to the Control Panel to remove an application (and a lot more). Note that output will contain the &#8220;UninstalKey&#8221; for use later on.</li>
</ol>
<p>Just place this script in your MDT 2010 Task Sequence, somewhere *after* the ZTIApplication.wsf script(s) are run.</p>
<h2>Sample Output:</h2>
<p>For example, in the 2nd case listed above, the script will display a list of installed programs, the “UninstallKey”, and a friendly name for the application:</p>
<pre>…
INSTALLED:   {23170F69-40C1-2702-0465-000001000000} \ 7-Zip 4.65 (x64 edition)
INSTALLED:   {25097770-2B1F-49F6-AB9D-1C708B96262A} \ System Center Operations Manager 2007 R2 Agent
INSTALLED:   {26A24AE4-039D-4CA4-87B4-2F86416017FF} \ Java(TM) 6 Update 17 (64-bit)
INSTALLED:   {29C93182-34F6-3275-A18D-59326851CD57} \ Microsoft Windows SDK for Visual Studio 2008 .NET Framework Tools - enu
INSTALLED:   {2F14965D-567B-4E59-ADEB-0A2CC1E3ADDF} \ Sql Server Customer Experience Improvement Program
INSTALLED:   {31E8F586-4EF7-4500-844D-BA8756474FF1} \ Windows Automated Installation Kit
INSTALLED:   {347F1DAD-AFF5-4F68-84F5-69AEB3EE1D24} \ Microsoft Deployment Toolkit 2010 Update 1 (5.1.1642.01)
…<span style="font-family:Consolas;color:#800000;font-size:x-small;"></span></pre>
<h2>Link:</h2>
<p><a title="http://cid-5407b03614346a99.office.live.com/self.aspx/Blog/ZTIAppVerify.zip" href="http://cid-5407b03614346a99.office.live.com/self.aspx/Blog/ZTIAppVerify.zip">http://cid-5407b03614346a99.office.live.com/self.aspx/Blog/ZTIAppVerify.zip</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/389/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/389/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/389/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/389/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/389/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/389/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/389/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/389/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/389/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/389/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/389/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/389/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/389/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/389/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=389&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2010/11/08/new-tool-ztiappverify-wsf-logs-the-status-of-all-installed-applications/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>
	</item>
		<item>
		<title>New Tool: USB Boot Tool</title>
		<link>http://deployment.xtremeconsulting.com/2010/10/28/new-tool-usb-boot-tool/</link>
		<comments>http://deployment.xtremeconsulting.com/2010/10/28/new-tool-usb-boot-tool/#comments</comments>
		<pubDate>Fri, 29 Oct 2010 03:30:22 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[MDT 2010]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[VBscript]]></category>

		<guid isPermaLink="false">https://tmintner.wordpress.com/2010/10/28/new-tool-usb-boot-tool/</guid>
		<description><![CDATA[Overview: The purpose of the tool is to add/remove WinPE Boot.wim file(s) to a USB Flash Drive using a wizard.  It is designed to integrate with the Microsoft Deployment Toolkit 2010. Description: It should be smart enough to find USB flash drives, find any local  MDT 2010 Litetouch.wim files, automatically mark the drive/partition active (if [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=384&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<h1>Overview:</h1>
<p>The purpose of the tool is to add/remove WinPE Boot.wim file(s) to a USB Flash Drive using a wizard. </p>
<p>It is designed to integrate with the Microsoft Deployment Toolkit 2010.</p>
<h1>Description:</h1>
<p>It should be smart enough to find USB flash drives, find any local  MDT 2010 Litetouch.wim files, automatically mark the drive/partition active (if not already set), and it can add/remove multiple *.wim files to a single USB Flash drive if there is enough space.</p>
<p>This is ideal if you want multiple Litetouch WIMs, For example x86 *<strong>and</strong>* x64 litetouch.wim files on the same USB stick, or Litetouch WIMs from multiple Deployment shares (One production server, one test server)..</p>
<p>USBootTool.hta is a standalone *.hta file, and requires no other components/libraries.</p>
<h1>Installation/Operation:</h1>
<p>· Just copy this script to your %deploymentshare%\Boot\ directory.</p>
<p>· When the script starts up it will display the Litetouch.wim files present on that directory. If not present it will enumerate through the Deployment shares mounted in the MDT console.</p>
<h1>Screen Shots:</h1>
<p><a href="http://tmintner.files.wordpress.com/2010/10/clip_image001.jpg"><img style="background-image:none;padding-left:0;padding-right:0;display:inline;padding-top:0;border:0;margin:0;" title="clip_image001" src="http://tmintner.files.wordpress.com/2010/10/clip_image001_thumb.jpg?w=244&h=175" border="0" alt="clip_image001" width="244" height="175" /></a></p>
<p>· Note the tool found my Flash Drive, parsed the BCD file and found three entries.</p>
<p>· I click &#8220;add&#8221; to add a *.wim file.</p>
<p><a href="http://tmintner.files.wordpress.com/2010/10/clip_image002.jpg"><img style="background-image:none;padding-left:0;padding-right:0;display:inline;padding-top:0;border:0;" title="clip_image002" src="http://tmintner.files.wordpress.com/2010/10/clip_image002_thumb.jpg?w=244&h=175" border="0" alt="clip_image002" width="244" height="175" /></a></p>
<p>· Note that the tool found several *.wim files in my deployment share.</p>
<p>· I can modify the description if required.</p>
<p><a href="http://tmintner.files.wordpress.com/2010/10/clip_image003.jpg"><img style="background-image:none;padding-left:0;padding-right:0;display:inline;padding-top:0;border:0;" title="clip_image003" src="http://tmintner.files.wordpress.com/2010/10/clip_image003_thumb.jpg?w=244&h=175" border="0" alt="clip_image003" width="244" height="175" /></a></p>
<p>· The script will copy all the necessary files to the Flash Drive.</p>
<p>· It will also place the *.wim file in a separate folder. The folder name is a GUID to prevent conflicts.</p>
<p>· I can repeat the process to add other *.wim files to my USB flash drive</p>
<h1> Source</h1>
<p><a href="http://cid-5407b03614346a99.office.live.com/self.aspx/Blog/USBBootTool.zip">http://cid-5407b03614346a99.office.live.com/self.aspx/Blog/USBBootTool.zip</a></p>
<p>-k</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/384/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/384/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/384/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/384/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/384/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/384/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/384/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/384/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/384/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/384/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/384/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/384/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/384/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/384/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=384&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2010/10/28/new-tool-usb-boot-tool/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>

		<media:content url="http://tmintner.files.wordpress.com/2010/10/clip_image001_thumb.jpg" medium="image">
			<media:title type="html">clip_image001</media:title>
		</media:content>

		<media:content url="http://tmintner.files.wordpress.com/2010/10/clip_image002_thumb.jpg" medium="image">
			<media:title type="html">clip_image002</media:title>
		</media:content>

		<media:content url="http://tmintner.files.wordpress.com/2010/10/clip_image003_thumb.jpg" medium="image">
			<media:title type="html">clip_image003</media:title>
		</media:content>
	</item>
		<item>
		<title>Hard Link Migration using USMT</title>
		<link>http://deployment.xtremeconsulting.com/2010/10/12/hard-link-migration-using-usmt/</link>
		<comments>http://deployment.xtremeconsulting.com/2010/10/12/hard-link-migration-using-usmt/#comments</comments>
		<pubDate>Tue, 12 Oct 2010 18:50:13 +0000</pubDate>
		<dc:creator>Dave Field</dc:creator>
				<category><![CDATA[USMT]]></category>

		<guid isPermaLink="false">http://deployment.xtremeconsulting.com/?p=372</guid>
		<description><![CDATA[Okay, so you’ve probably heard about how USMT can now migrate files without actually removing them from your computer…
<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=372&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Okay, so you’ve probably heard about how USMT can now migrate files without actually removing them from your computer…</p>
<p>You hadn’t? Well, let me be the first to tell you, and show you a short test you can do to prove this capability to yourself.</p>
<h2>Hard Links</h2>
<p>The NTFS file system supports a method of linking files that will be familiar to those with backgrounds in UNIX or Linux. These file system structures are called <strong>links</strong>. Essentially, they are aliases that point at a physical file stored somewhere else on a storage volume. The file can be accessed from either location, just as if it was stored there. The exact mechanism by which this is accomplished is different in NTFS, but the feature looks and acts the same.</p>
<h2>How USMT uses Hard Links</h2>
<p>When the User State Migration Tool (USMT) uses hard links, it creates a folder on the file system and writes links in it to files that are to be migrated to the new operating system. When the new operating system is installed, scripts can delete the original folders, clearing space on the disk for the new OS. As long as the folder created by USMT is not deleted, either directly or by formatting the volume, the files are preserved by the hard links. When the OS installation is completed, USMT runs again, restoring the original file links and removing the hard link folder.</p>
<h3>Does this really work?</h3>
<p>Try this short test. On a command prompt, issue the commands below and observe the output:</p>
<p>Create two folders for the test:</p>
<p>C:\&gt;mkdir test1</p>
<p>C:\&gt;mkdir test2</p>
<p>Now, write a file into the first folder:</p>
<p>C:\&gt;Echo &#8220;Hello world!&#8221; &gt; .\test1\test1.txt</p>
<p>Verify the file is readable:</p>
<p>C:\&gt;type .\test1\test1.txt</p>
<p>&#8220;Hello world!&#8221;</p>
<p>Now make a hard link to a filename in the second folder:</p>
<p>C:\&gt;mklink /H c:\test2\test2.txt c:\test1\test1.txt</p>
<p>Hardlink created for c:\test2\test2.txt &lt;&lt;===&gt;&gt; c:\test1\test1.txt</p>
<p>Verify that you can read the second “file”.</p>
<p>C:\&gt;type test2\test2.txt</p>
<p>&#8220;Hello world!&#8221;</p>
<p>You are reading the original through a hard link!</p>
<p>Now delete the first file:</p>
<p>C:\&gt;del test1\test1.txt</p>
<p>Is the file gone? Let’s check:</p>
<p>C:\&gt;type .\test1\test1.txt</p>
<p>The system cannot find the file specified.</p>
<p>Looks gone to me…let’s check the second file:</p>
<p>C:\&gt;type test2\test2.txt</p>
<p>&#8220;Hello world!&#8221;</p>
<h2>More in using USMT to migrate users</h2>
<p>Well, that’s about it. USMT preserves your data right on the disk even as the new operating system is installed. You’ve seen it with your own two eyes, so you know it works. Now take USMT for a spin. You can find out more about USMT in Tim Mintner’s post: <a href="http://deployment.xtremeconsulting.com/2009/11/20/understanding-usmt-with-mdt-2010/">Understanding USMT with MDT 2010</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/372/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/372/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/372/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/372/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/372/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/372/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/372/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/372/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/372/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/372/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/372/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/372/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/372/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/372/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=372&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2010/10/12/hard-link-migration-using-usmt/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/be24eded3e10fc0969b414780f7b8a40?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">field5555</media:title>
		</media:content>
	</item>
		<item>
		<title>User Tiles in the Domain</title>
		<link>http://deployment.xtremeconsulting.com/2010/10/08/user-tiles-in-the-domain/</link>
		<comments>http://deployment.xtremeconsulting.com/2010/10/08/user-tiles-in-the-domain/#comments</comments>
		<pubDate>Fri, 08 Oct 2010 08:03:04 +0000</pubDate>
		<dc:creator>Micah Rowland</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">https://tmintner.wordpress.com/2010/10/08/user-tiles-in-the-domain/</guid>
		<description><![CDATA[In a previous post, I described a solution for handling user account tiles for local accounts. A reader recently emailed me inquiring about user tiles for domain users and I realized that I had failed to cover how Windows 7 handles this and how an IT department could leverage this functionality. For those of you [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=370&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>In a previous post, I described a solution for handling user account tiles for local accounts. A reader recently emailed me inquiring about user tiles for domain users and I realized that I had failed to cover how Windows 7 handles this and how an IT department could leverage this functionality.</p>
<p>For those of you who have read the previous post, you’ll remember that Windows 7 (and Vista) stores the usertile picture that is displayed on login and on the start menu in the registry buried in the SAM hive. This article assumes you have read the previous one and will only briefly reiterate key points as necessary.</p>
<p>For domain accounts, the story is slightly different. Domain account usertiles are not in fact stored in the registry but in a much more accessible location, <em>C:\ProgramData\Microsoft\User Account Pictures\ .</em> If only local accounts were so easy. But don’t worry, we’ll still have a fun time. The usertile files for each user are saved as DOMAIN+username.dat. For example, John Doe at Contoso would be stored as CONTOSO+jdoe.dat. The contents of this dat file will look very familiar to any of you who have looked at local usertiles in the registry. In fact, the hex data stored in this file is EXACTLY the same as how it would be stored in the registry.</p>
<p>So lets get our plan of attack:</p>
<ol>
<li>Login to a domain account. Any will do.</li>
<li>Set our usertile the old fashioned way.</li>
<li>Retrieve the generated dat file.</li>
<li>Use it!</li>
</ol>
<p>WAY SIMPLER THAN LOCAL ACCOUNTS!</p>
<p>Let’s take the following scenario posed by one reader. Contoso would like users in each of 5 departments to have a department specific usertile. First we login using a domain account (for our example John Doe will do) and set its usertile to the first department&#8217;s desired tile. We then copy the <em>C:\ProgramData\Microsoft\User Account Pictures\CONTOSO+jdoe.dat</em> file to a holding area and rename it to <em>departmentname.dat. </em>We then repeat for the remaining 4 departments. Now that we have the proper dat files we can leverage them in a few different ways. Most users will go the route of the logon script: Check for group membership to ascertain the department of the user (or read an Active Directory attribute) and copy the proper department dat file into the local computer’s User Account Picture directory. We could also preload our OS deployment with a set of all user files for all members of the domain (probably only a good idea in an organization with a small number of users). Using a logon script will ensure that the proper department icon is used, even if a user changes it, though placing a complementing logoff script would be prudent to prevent any non-compliance. </p>
<p>Whatever way you cut it, it’s pretty much up to you at this point. Bon Appétit!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/370/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/370/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/370/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/370/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/370/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/370/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/370/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/370/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/370/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/370/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/370/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/370/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/370/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/370/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=370&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2010/10/08/user-tiles-in-the-domain/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e5d625f8daa701b969ef654f169de4e5?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">ioamnesia</media:title>
		</media:content>
	</item>
		<item>
		<title>P2V Migration for Software Assurance Beta 2 Now Available &#8211; with System Center Configuration Manager 2007 integration</title>
		<link>http://deployment.xtremeconsulting.com/2010/09/26/p2v-migration-for-software-assurance-beta-2-now-available-with-system-center-configuration-manager-2007-integration-2/</link>
		<comments>http://deployment.xtremeconsulting.com/2010/09/26/p2v-migration-for-software-assurance-beta-2-now-available-with-system-center-configuration-manager-2007-integration-2/#comments</comments>
		<pubDate>Mon, 27 Sep 2010 05:05:22 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[Announcements]]></category>
		<category><![CDATA[MDT 2010]]></category>
		<category><![CDATA[System Center Configuration Manager]]></category>
		<category><![CDATA[Troubleshooting]]></category>
		<category><![CDATA[USMT]]></category>
		<category><![CDATA[VBscript]]></category>
		<category><![CDATA[Windows 7]]></category>

		<guid isPermaLink="false">https://tmintner.wordpress.com/?p=363</guid>
		<description><![CDATA[  We&#8217;ve been busy here at Xtreme Consulting Group, recently Keith worked as a Developer on the P2V Migration project with Microsoft. For more information on P2V Migration, click here. P2V Migration adds documentation and support of System Center Configuration Manager 2007 Zero Touch Installation!  What is better than spending a moment to kick off [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=363&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p> </p>
<p>We&#8217;ve been busy here at Xtreme Consulting Group, recently Keith worked as a Developer on the P2V Migration project with Microsoft.</p>
<p>For more information on P2V Migration, click <a href="http://connect.microsoft.com/site14/InvitationUse.aspx?ProgramID=1646&amp;InvitationID=P2VM-C49K-PQHR">here</a>.</p>
<table cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td valign="top"><strong>P2V Migration adds documentation and support of System Center Configuration Manager 2007 Zero Touch Installation!</strong><strong> </strong></p>
<p>What is better than spending a moment to kick off a completely automated process to redeliver an existing operating system as a virtual machine within a new build of Windows 7?<br />
Answer: Making the entire process “zero touch” without necessitating a visit to the target computer or manually initiating the migration!</p>
<p>P2V Migration for Software Assurance can now be implemented using System Center Configuration Manager 2007 Operating System Deployment as well as native Lite Touch Installation with the Microsoft Deployment Toolkit 2010 U1. Computer refresh, replace and restore task sequence templates for Configuration Manager are included and documented in this Beta release.</p>
<table border="0" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td width="332" valign="top"><a href="http://tmintner.files.wordpress.com/2010/09/clip_image001.jpg"><img style="display:inline;border-width:0;" title="clip_image001" src="http://tmintner.files.wordpress.com/2010/09/clip_image001_thumb.jpg?w=244&h=201" border="0" alt="clip_image001" width="244" height="201" /></a></td>
<td width="225" valign="top">P2V Migration templates integrated with Microsoft Deployment Task Sequence options in System Center Configuration Manager. Can be created and advertised as with other task sequence options.</td>
</tr>
</tbody>
</table>
<p>Additional optimizations beyond Configuration Manager functionality included in this release are:</p>
<p>1. Better flexibility for backing-up and restoring VHD files using default file locations</p>
<p>2. Support for PCs using system and boot volumes</p>
<p>3. Globalization of scripts to handle varying regional and locale formats</p>
<p>4. General bug fixes and improved documentation</p>
<p>These fixes reflect the feedback of our Connect community and MVPs – thanks to everyone for submitting feedback!</td>
</tr>
</tbody>
</table>
<p><strong>Download P2V Migration for Software Assurance Beta 2 now:</strong></p>
<p><a href="http://connect.microsoft.com/site14/InvitationUse.aspx?ProgramID=1646&amp;InvitationID=P2VM-C49K-PQHR">P2V Migration for Software Assurance</a></p>
<table cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td valign="top"><strong>New to P2V Migration for Software Assurance? </strong></p>
<p><strong> </strong></p>
<p>This solution was built to help unblock OS deployments by redelivering blocking users’ old Windows environments, applications and browsers seamlessly in Windows 7 using automated physical-to-virtual migration</td>
</tr>
</tbody>
</table>
<p>P2V Migration for Software Assurance uses the Microsoft Deployment Toolkit, Sysinternals Disk2VHD and optionally System Center Configuration Manager 2007 to convert a user’s existing Windows XP or newer client environment to a virtual hard disk then automates the delivery of an updated and personalized Windows 7 operating system containing a virtual machine with the user’s previous Windows environment, applications and Web browser. The user’s previous virtual desktop retains its existing management components, domain membership and policies. The process also publishes applications and the browser for the user to access them seamlessly within Windows 7’s start menu.</p>
<p><strong>How it Works</strong></p>
<table border="0" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td width="317" valign="top"><a href="http://tmintner.files.wordpress.com/2010/09/clip_image002.jpg"><img style="display:inline;border-width:0;" title="clip_image002" src="http://tmintner.files.wordpress.com/2010/09/clip_image002_thumb.jpg?w=244&h=186" border="0" alt="clip_image002" width="244" height="186" /></a></td>
<td width="241" valign="top">Completely automated process enables the previous operating system to be a child virtual machine inside the Windows 7 host.</td>
</tr>
<tr>
<td width="317" valign="top"><a href="http://tmintner.files.wordpress.com/2010/09/clip_image003.jpg"><img style="display:inline;border-width:0;" title="clip_image003" src="http://tmintner.files.wordpress.com/2010/09/clip_image003_thumb.jpg?w=244&h=238" border="0" alt="clip_image003" width="244" height="238" /></a></td>
<td width="241" valign="top">Standalone application and Internet Explorer links published from virtual machine to native Windows 7 start menu. These applications can be launched individually using RemoteApp integration – without showing the entire virtual machine’s desktop.</td>
</tr>
</tbody>
</table>
<p>Keith</p>
<address><a href="http://keithga.com"><span style="color:#993300;">Keith Garner</span></a><span style="color:#993300;"> is a Deployment Specialist with </span><a href="http://deployment.xtremeconsulting.com/"><span style="color:#993300;">Xtreme Consulting Group</span></a></address>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/363/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/363/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/363/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/363/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/363/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/363/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/363/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/363/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/363/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/363/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/363/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/363/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/363/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/363/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=363&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2010/09/26/p2v-migration-for-software-assurance-beta-2-now-available-with-system-center-configuration-manager-2007-integration-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>

		<media:content url="http://tmintner.files.wordpress.com/2010/09/clip_image001_thumb.jpg" medium="image">
			<media:title type="html">clip_image001</media:title>
		</media:content>

		<media:content url="http://tmintner.files.wordpress.com/2010/09/clip_image002_thumb.jpg" medium="image">
			<media:title type="html">clip_image002</media:title>
		</media:content>

		<media:content url="http://tmintner.files.wordpress.com/2010/09/clip_image003_thumb.jpg" medium="image">
			<media:title type="html">clip_image003</media:title>
		</media:content>
	</item>
		<item>
		<title>Windows 7 IE8 Favorites Bar Organization &#8211; A Descent Into Binary Registry Storage</title>
		<link>http://deployment.xtremeconsulting.com/2010/09/24/windows-7-ie8-favorites-bar-organization-a-descent-into-binary-registry-storage/</link>
		<comments>http://deployment.xtremeconsulting.com/2010/09/24/windows-7-ie8-favorites-bar-organization-a-descent-into-binary-registry-storage/#comments</comments>
		<pubDate>Fri, 24 Sep 2010 14:29:39 +0000</pubDate>
		<dc:creator>Micah Rowland</dc:creator>
				<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[Windows 7]]></category>

		<guid isPermaLink="false">https://tmintner.wordpress.com/?p=329</guid>
		<description><![CDATA[Recently a client requested that the favorites and a different set of favorites links be populated in the favorites bar area based on the geographic location of the imaged computer. Most of the normal favorites were static, that is to say the same no matter which location the computer was at, only a few needed [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=329&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Recently a client requested that the favorites and a different set of favorites links be populated in the favorites bar area based on the geographic location of the imaged computer. Most of the normal favorites were static, that is to say the same no matter which location the computer was at, only a few needed to be customized. In addition, the links in the Favorites Bar were required to be displayed in a specific order with any additional links placed on the far right. On the surface this appeared to be a pretty straight forward request. If only it was…</p>
<p>Initially I attempted to delete the contents of the %USERPROFILE%\Favorites\ folder and add a task sequence to copy a captured Favorites folder’s contents in. Unfortunately, this only partially worked. The links were required to have their respective icons cached and copying in a new set caused all of the links to revert to the default link icon. In addition, the Favorites Bar was empty and the Favorites menu had an additional folder named Favorites Bar that contained the links that should have been on the Favorites Bar itself. Time to dig in.</p>
<p><a href="http://tmintner.files.wordpress.com/2010/09/image.png"><img class="wlDisabledImage" style="display:inline;border-width:0;" title="image" src="http://tmintner.files.wordpress.com/2010/09/image_thumb.png?w=396&h=504" border="0" alt="image" width="396" height="504" /></a></p>
<p>On the surface it appears that Favorites Bar links are stored at %USERPROFILE%\Favorites\Favorites Bar. Looking at the properites window, the Read-only check box is blacked out, a good indication that the folder is a “special folder”. Digging a bit deeper, I found that the “Favorites Bar” folder <em>is</em> a special folder whose actual folder path is %USERPROFILE%\Favorites\Links (even though it displays as “Favorites Bar”). When Internet Explorer launches, it checks for the Links folder, not the Favorites Bar folder. If the Links folder does not exist, one is created as a special folder that displays in Windows as “Favorites Bar”.</p>
<p><a href="http://tmintner.files.wordpress.com/2010/09/image1.png"><img class="wlDisabledImage" style="display:inline;border-width:0;" title="image" src="http://tmintner.files.wordpress.com/2010/09/image_thumb1.png?w=366&h=250" border="0" alt="image" width="366" height="250" /></a></p>
<p>I’m always a fan of letting Windows do what it’s best at instead of trying to reverse engineer everything. So, to start I included the base set of favorites in the image. I then wrote a PowerShell script that determined the location based on the computers default gateway, opened the links that required customization, read through the lnk file and replace the FeedUrl and URL properties with the correct values, and rename the url files that required custom names reflecting the location. Here’s a brief script that illustrates the one used. Lets assume the link is named Link.url and the customer has 5 sites with different gateways. This script determines the gateway, maps it to a static list (you could use a environmental variable set by MDT), and then replaces the CITY in the link http://www.contoso.com/CITY/site.html and renames the favorites file.</p>
<pre style="font-size:8pt;">#Get Gateway (assuming only one active network connection)
$strComputer = "."
$Nics = Get-wmiobject win32_NetworkAdapter -comp $strComputer
foreach ($Nic in $Nics)
{     $Config = Get-Wmiobject win32_NetworkAdapterConfiguration | where {$_.index -eq $Nic.index}     if ($config.IPAddress -ne $null)     {         $VGateway = $config.DefaultIPGateway     }
}
#Setup hash table and set urlLocation and city variables
$GatewayList = @{"10.0.0.1" = "urlfolder1";"10.0.1.1"  = "urlfolder2";"10.0.2.1" = "urlfolder3";"10.0.3.1"  = "urlfolder4";"10.0.4.1"    = "urlfolder5"}
$CityList = @{"10.0.0.1" = "City1, CA";"10.0.1.1"  = "City2, CO";"10.0.2.1" = "City3, WI";"10.0.3.1" = "City4, IA";"10.0.4.1" = "City5, NY"}
$urlLocation = $GatewayList[$VGateway]
$city = $CityList[$VGateway]
#Repeat for each file that needs customization
$file = get-item 'c:\users\USERNAME\favorites\links\CustomizedLinkFolder\Link.url'
$newcontents = ""
$reader = $file.opentext()
while ($reader.EndOfStream -eq $FALSE)
{     $curline = $reader.ReadLine()     if ($curline.contains("BASEURL="))     {         $newcontents += "BASEURL=&lt;a href="http://www.contoso.com/""&gt;http://www.contoso.com/"&lt;/a&gt; + $urlLocation[0] + "/site.html`n"     }     elseif ($curline.contains("URL="))     {         $newcontents += "URL=&lt;a href="http://www.contoso.com/""&gt;http://www.contoso.com/"&lt;/a&gt; + $urlLocation[0] + "/site.html`n"     }     else     {         $newcontents += $curline + "`n"     }
}
$reader.close()
out-file -filepath $file -InputObject $newcontents
#After all are edited, rename webslices to city
get-childItem C:\users\USERNAME\Favorites\Links\*.url | rename-item -newname { $_.name -replace 'CITYHERE', $city }</pre>
<p>Ok, that’s not too bad, just cracking open the URL files and editing inline… So now I have the right links, on to the Favorites Bar!</p>
<p>Using Sysinternals Process Monitor, IE was monitored and the first time Internet Explorer opens, process monitor showed it writing to a  the contents of the Favorites Bar and stores it in the registry in a key named Order located at:</p>
<p>HKCU:\Software\Microsoft\Windows\Currentversion\Explorer\Menuorder\Favorites\Links</p>
<p>So let’s open up the registry and take a look…</p>
<p><a href="http://tmintner.files.wordpress.com/2010/09/image2.png"><img class="wlDisabledImage" style="display:inline;border-width:0;" title="image" src="http://tmintner.files.wordpress.com/2010/09/image_thumb2.png?w=320&h=254" border="0" alt="image" width="320" height="254" /></a></p>
<p><a href="http://tmintner.files.wordpress.com/2010/09/image3.png"><img class="wlDisabledImage" style="display:inline;border-width:0;" title="image" src="http://tmintner.files.wordpress.com/2010/09/image_thumb3.png?w=320&h=254" border="0" alt="image" width="320" height="254" /></a></p>
<p>Oh boy!</p>
<p>A half hour later and a few well crafted web searches later (A needle in a haystack search… got lucky) landed me at a website that described the format of this key for Windows XP and Windows Vista.</p>
<p><a title="http://www.codeproject.com/KB/shell/iefavdecon.aspx" href="http://www.codeproject.com/KB/shell/iefavdecon.aspx">http://www.codeproject.com/KB/shell/iefavdecon.aspx</a></p>
<p>After comparing the binary format as described at this site with the stored values, something didn’t quite line up so I loaded the hex into excel and started reverse engineering the data using the provided binary format information as a starting point.</p>
<p><a href="http://tmintner.files.wordpress.com/2010/09/image4.png"><img class="wlDisabledImage" style="display:inline;border-width:0;" title="image" src="http://tmintner.files.wordpress.com/2010/09/image_thumb4.png?w=832&h=504" border="0" alt="image" width="832" height="504" /></a></p>
<p>The information from Code Project was invaluable at deconstructing this (and I learned a lot about how Microsoft stores data in binary registry values). The Subrecord1 header in Windows XP is 18 bytes long, in Windows Vista is 36 bytes long, and, as I found, in Windows 7 is now 40 bytes long. There may be other changes to each field, but the main change is the size of that header. A side point: the length field of the header is stored in 2 bytes which as you read the hex need to be reversed…. so a length of 1C0 (448 bytes) is stored as C0 01.</p>
<p>Code Project does a  good job of describing the format, once you understand it&#8230; I&#8217;ll try to briefly explain and diagram it, I hope it clears it up a bit.</p>
<p>The data is stored much like a TCP IP packet with encapsulation (stay with me here). Think of it as a giant envelope that has a bunch of envelopes inside, and each envelope inside has an envelope in it that contains a letter. The binary data starts with a header that is 20 bytes long. This header tells us how many bytes long the payload is and how many items are in it. After we read the header, the first payload (envelope) follows. This envelope has an 8-byte header as well that tells you how long (how many bytes) its payload is as well as *TADA* the order it is to appear in the Favorites Bar. The length is how we know where one favorites bar item ends and the next begins. We then grab that many bytes and we have the item envelope. The item envelope has a 28-byte header that tells us what type of item it is (link or folder). Finally we have the &#8220;letter&#8221;, the actual data about the favorites bar item. The data contains such information as the file name of the item, the type of the item (link or folder)</p>
<p><a href="http://tmintner.files.wordpress.com/2010/09/image5.png"><img style="background-image:none;padding-left:0;padding-right:0;display:inline;padding-top:0;border:0;" title="image" src="http://tmintner.files.wordpress.com/2010/09/image_thumb5.png?w=374&h=404" border="0" alt="image" width="374" height="404" /></a></p>
<p>After rereading that explanation above, I’ll be honest, it’s a complex topic and trying to explain it may have just made some readers’ nose bleed.</p>
<p>Sufficed to say, the above information allowed me to craft a PowerShell script that reads the data, scans each item and checks it’s longname property for a specific set of strings, and sets the order value in the purple header as desired.</p>
<p>And here’s the PowerShell script to reorder:</p>
<pre style="font-size:8pt;">$key = get-item HKCU:\software\microsoft\windows\currentversion\explorer\menuorder\Favorites\Links
$value = $key.getvalue("Order")
write-host Original Size: $value.count
[byte[]] $newvalue = @()
$newvalue = $value[0..19]
$payload =  $value[20..$value.GetUpperBound(0)]
$list = @{}
[int] $i = 0
$remPayload = $payload.Clone()
write-host Payload Size: $remPayload.Count
while ($remPayload.Count -gt 8)
{     [byte[]] $currentrecord = @()     $length = $remPayload[3]*65536+$remPayload[2]*4096+$remPayload[1]*256+$remPayload[0]     $currentrecord = $remPayload[0..($length-1)]     write-host Record $i Size = $length     $list.add($i, $currentrecord)     $remPayload = $remPayload[$length..$remPayload.GetUpperBound(0)]     $i++
}
#$list.add($i.tostring(), $remPayload)
$order = 6
write-host Begining For list is $list.count members
for ($i = 0; $i -lt $list.count; $i++)
{     write-host Processing list item $i order $list[$i][4]     if ($list[$i].count -gt 8)     {          $startposition = $list[$i][-8] + 49          $teststring = ""          for ($y=1; $y -le 14; $y++)          {             $teststring += [char] $list[$i][$startposition + $y]          }          #$teststring          $n = [char](0)          if ($teststring.Contains("D"+$n+"o"+$n+"w"))          {             $list[$i][4]=0          }          elseif ($teststring.Contains("W"+$n+"e"+$n+"a"+$n+"t"+$n+"h"+$n+"e"+$n+"r"))          {             $list[$i][4]=1          }          elseif ($teststring.Contains("T"+$n+"r"+$n+"a"+$n+"f"+$n+"f"+$n+"i"+$n+"c"))          {             $list[$i][4]=2          }          elseif ($teststring.Contains("N"+$n+"e"+$n+"w"+$n+"s"))          {             $list[$i][4]=3          }          elseif ($teststring.Contains("W"+$n+"e"+$n+"b"))          {             $list[$i][4]=4          }          elseif ($teststring.Contains("C"+$n+"o"+$n+"n"+$n+"t"+$n+"o"+$n+"s"+$n+"o"))          {             $list[$i][4]=5          }          else          {             $list[$i][4]=$order             $order++          }     }
}    for ($i = 0; $i -lt $list.count; $i++)
{     if ($list[$i].count -gt 8)     {         write-host List item $i byte 10 = $list[$i][10] order = $list[$i][4]             $newvalue += $list[$i]     }
}        $value.count
$newvalue.count
set-itemproperty HKCU:\software\microsoft\windows\currentversion\explorer\menuorder\Favorites\Links Order $newvalue
write-host Total List Items: $list.count</pre>
<p>As you can see, the script is very static, it’s looking for a link that has Dow, Weather, News, Web, or Contoso and puts those in positions 0 through 5, any other links are put afterwards.</p>
<p>Theoretically this script could be executed as part of a logon script so that the favorites bar gets reorganized everytime the user logs on and places any user added links at the end of the favorites bar.</p>
<p>Well that’s it. Wish this was stored in a much easier format like XML. C’est la vie.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/329/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/329/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/329/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/329/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/329/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/329/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/329/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/329/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/329/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/329/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/329/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/329/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/329/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/329/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=329&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2010/09/24/windows-7-ie8-favorites-bar-organization-a-descent-into-binary-registry-storage/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e5d625f8daa701b969ef654f169de4e5?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">ioamnesia</media:title>
		</media:content>

		<media:content url="http://tmintner.files.wordpress.com/2010/09/image_thumb.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://tmintner.files.wordpress.com/2010/09/image_thumb1.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://tmintner.files.wordpress.com/2010/09/image_thumb2.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://tmintner.files.wordpress.com/2010/09/image_thumb3.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://tmintner.files.wordpress.com/2010/09/image_thumb4.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://tmintner.files.wordpress.com/2010/09/image_thumb5.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>
	</item>
		<item>
		<title>UserTile Automation</title>
		<link>http://deployment.xtremeconsulting.com/2010/06/23/usertile-automation-part-1/</link>
		<comments>http://deployment.xtremeconsulting.com/2010/06/23/usertile-automation-part-1/#comments</comments>
		<pubDate>Wed, 23 Jun 2010 20:35:23 +0000</pubDate>
		<dc:creator>Micah Rowland</dc:creator>
				<category><![CDATA[USMT]]></category>
		<category><![CDATA[VBscript]]></category>
		<category><![CDATA[Windows 7]]></category>

		<guid isPermaLink="false">http://deployment.xtremeconsulting.com/?p=298</guid>
		<description><![CDATA[Recently a customer requested that two accounts be created during the MDT process and required each to have a preset user account picture (referred to by Windows as the User Tile). There are a number of ways to accomplish this, USMT/Easy Transfer wizard being the easiest. However, due to the processes they already had built [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=298&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Recently a customer requested that two accounts be created during the MDT process and required each to have a preset user account picture (referred to by Windows as the User Tile). There are a number of ways to accomplish this, USMT/Easy Transfer wizard being the easiest. However, due to the processes they already had built into the base image, I decided the best tack was to investigate the actual process employed in storing the User Tile and build automation that could quickly accomodate changes to the specifications of which image to use. After a quick search of the web, it seems that this particular problem, programatically changing the User Tile has not yet found a solution. I present to you my findings along with a sample script to tackle this seemingly simple manual process.</p>
<p>The first step in automating any process is to do it manually first and watch what happens. I rely on the Sysinternals tool Process Monitor as well as Process Explorer for most of my research. Launching Process Explorer as an administrator led me down a few dead ends. It was only after running Process Explorer in the System context using PSExec with the -s and -i switches that I was able to locate the location that Windows 7 uses to store the user tile.</p>
<p>The User Tiles configuration information is stored in Windows registry at <em>HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\########</em>, where ######## is a unique 8 digit hexadecimal ID, in as a binary value named UserTile. But how can we cross reference a username to this 8-digit ID? Glad you asked!</p>
<p>Taking a further look at the registry key, you&#8217;ll notice that beneath the user ids, there is another key called Names. If you expand this key you&#8217;ll see a list of all local user accounts on the system. Upon opening any of the user keys you&#8217;ll notices that only a default value exists. However, take a look at the value type&#8230; It is not a standard type, but a hexidecimal number 0x### where the ### id crossreferences nicely with the list of user ids above. In our script we need only pad this value with leading 0&#8242;s until it reaches the desired 8-digits. Trying to retrieve this hexidecimal &#8220;type&#8221; throws exceptions in nearly every method I tried. Exporting the key to a .reg file gave me the output I needed to be able to search for a specific username and retrieve its id.</p>
<p>The SAM Hive of the registry is not generally accessible to any user accounts and is configured, by default, to only be accessed by the System account. To maintain security, both the read and the write operations necessary to modify the UserTiles programmatically are accomplished by executing the operations in the System context. Execution in the system context is accomplished by utilizing the PSExec tool.</p>
<p>When a user interactively changes the UserTile by means of the User Account control panel, Windows resizes the image specified by the user to 128&#215;128 and saves new image as a 24-bit bitmap file in the C:\ProgramData\Microsoft\User Account Pictures\ folder as USERNAME.bmp. The bitmap is then stored in the registry in the SAM and the user’s contact card is updated.</p>
<p>The binary data is composed of a header followed by a payload containing the binary graphic used for the UserTile and closed with a footer that contains the path to the file used as the UserTile. The header is 16 bytes long.</p>
<ol>
<li>12-bytes (seem to be constant at 01 00 00 00 03 00 00 00 01 00 00 00)</li>
<li>4-byte field representing the size of the payload</li>
</ol>
<p>The payload data reveals that the image stored in the registry is 126&#215;126 pixels, presumably to make up for the 1 pixel wide border around the image when displayed on the logon screen and on the start menu. Further, the image is stored in 16-bit color depth using BI_BITFIELDS compression.</p>
<p>The footer contains the type of image file used and the location of the file used using Unicode (2-bytes per character). The format is as follows:</p>
<ol>
<li>4-byte field (purpose unknown, possibly the length of the following field)</li>
<li>A null-terminated Unicode string representing the file type
<ol>
<li>Eg. “bmp” = 62 00 6D 00 70 00 00 00</li>
</ol>
</li>
<li>4-byte field (purpose unknown, always 02 00 00 00)</li>
<li>4-byte field representing the payload (bitmap) size in bytes</li>
<li>A null-terminated Unicode string representing the file location padded to the nearest 4 bytes.</li>
</ol>
<p>Phew! Needless to say, this level of detail is not necessary for part 1 of this post, however in crafting a truely dynamic programmatic approach to changing the uer tile, we will need this information.</p>
<h2>Solution:</h2>
<p>It should be possible to engineer an application that accepts a username and a bitmap file to use. However, for part 1, it is simpler to export the registry keys from a sample machine using either the reg.exe or the regedit.exe utility under the System context using PSExec.</p>
<p>When scripting this automation, we must be aware that the first time PSExec is run, a EULA must be accepted. To avoid this, the following registry file is imported (AcceptPSExecEULA.reg):</p>
<table cellspacing="0" cellpadding="0" width="100%">
<tbody>
<tr>
<td>
<pre>Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\Sysinternals\PsExec]
"EulaAccepted"=dword:00000001</pre>
</td>
</tr>
</tbody>
</table>
<p>The following script was created to accomplish the goal of changing the UserTiles:</p>
<table cellspacing="0" cellpadding="0" width="100%">
<tbody>
<tr>
<td>
<pre>''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'   Title:   User Tile Change Script
'   Author:  Micah Rowland (Xtreme Consulting)
'   Date:    07/14/2010
'   Desc:    This script is designed to programatically replace
'            a single local user's User Tile on Windows Vista
'            and above.
'   Prereq:  This script requires the use of PSExec available
'            from <a href="http://live.sysinternals.com/psexec.exe">http://live.sysinternals.com/psexec.exe</a>
'   Usage:   UserTile.vbs USERNAME USERTILEFILE
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
CONST FORREADING = 1
CONST FORWRITING = 2

set objShell = CreateObject("Wscript.Shell")
set objFSO = CreateObject("Scripting.FileSystemObject")
set objArgs = Wscript.Arguments
set objShell = CreateObject("Wscript.shell")
if CheckArgs() &lt;&gt; "" then
     Wscript.echo Checkargs() &amp; vbcrlf
     wscript.echo "Arguments Invalid. Usage: ChangeUserPicture.vbs USERNAME UserTileFile"
     wscript.quit()
end if

strUsername = objArgs(0)
strUserTileFile = objArgs(1)
strUserIndex = GetUserIndex()
set objFile = objFSO.GetFile(strUserTileFile)
set objTS = objFile.OpenAsTextStream(1)
strUserTile = objTS.ReadAll
wscript.echo strUserTile
strRegFile = objShell.ExpandEnvironmentStrings("%temp%") &amp; "\UserIndexes2.reg"
set objRegFile = objFSO.OpenTextFile(strRegFile, ForWriting, true)
contents = "Windows Registry Editor Version 5.00" &amp; vbcrlf &amp; vbcrlf &amp; "[HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\" &amp; strUserIndex &amp; "]" &amp; vbcrlf &amp; strUserTile
objRegFile.Write contents
objRegFile.Close

strImport = "PSEXEC -S -I reg import " &amp; strRegFile
objShell.Run strImport

Function GetUserIndex

     ' This function exports the Names key of the SAM from the registry to determine a match between the user account provided
     ' and its hex ID for use in creating the new registry file for import. Because the .reg file is exported in Unicode format
     ' we use the type command to pipe it from stdout to a new text file.

     strUsername = objArgs(0)
     strUserTileFile = objArgs(1)
     objShell.run "cmd /c reg export HKLM\SAM\SAM\Domains\Account\Users\Names %temp%\UserIndexes.reg /y"
     wscript.sleep(500)
     objShell.run "CMD /C type %temp%\userindexes.reg &gt; %temp%\userindexes.txt"
     wscript.sleep(500)
     set objFile = objFSO.GetFile(objShell.ExpandEnvironmentStrings("%temp%") &amp; "\userindexes.txt")
     set objRegExport = objFile.OpenAsTextStream(FORREADING)
     curLine = objRegExport.ReadLine()
     do until instr(lcase(curLine), lcase(strUserName)) or objRegExport.atendofStream
          curLine = objRegExport.ReadLine
     loop
     if objRegExport.AtEndOfStream then
          wscript.echo "Username not found."
          wscript.quit()
     else
          curLine = ObjRegExport.ReadLine
          tmpGetUserIndex = mid(curLine, instr(curLine, "(") + 1, len(curline) - instr(curline, "(") - (len(curLine) - instr(curline, ")")+1))
          do until len(tmpGetUserIndex) = 8
               tmpGetUserIndex = "0" &amp; tmpGetUserIndex
          loop
          GetUserIndex = tmpGetUserIndex
     end if
End Function

Function CheckArgs()
     ' This function makes sure that 2 arguments were provided and that the filename provided exists
     if objArgs.Count &lt;&gt; 2 then
          CheckArgs = "Exactly 2 arguments must be specified."
     elseif not objFSO.FileExists(objArgs(1)) then
          CheckArgs = "File not found."
     else
          CheckArgs = ""
     end if
 End Function</pre>
</td>
</tr>
</tbody>
</table>
<p>The script syntax is: <em>SetUserTile.vbs USERNAME FILE</em></p>
<p>The file used by this script consists of only the UserTile value from a registry export of a preconfigured UserTile. This can be accomplished by setting a local user account&#8217;s picture, opening regedit using the <strong>psexec -s -i regedit.exe </strong>command, navigating to the SAM key mentioned above, determining the correct user account as detailed above, and exporting the key. Then remove <em>all </em>data in the .reg file <strong>except the &#8220;UserTile=hex:&#8230;&#8221; entry.</strong></p>
<p>To leverage this script, a command-script file was created and added to the Software Installation task sequence.</p>
<table cellspacing="0" cellpadding="0" width="100%">
<tbody>
<tr>
<td>
<pre>reg import AcceptPSExecEULA.reg
cscript SetUserTile.vbs "USERNAME" DATAFILE.txt</pre>
</td>
</tr>
</tbody>
</table>
<p>I hope to have a commandline based program developed in the future to tackle this which will accept any sized bitmap image as it&#8217;s input as opposed to using a captured registry value. I hope you have enjoyed this post. If you have any questions feel free to ask!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/298/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/298/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/298/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/298/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/298/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/298/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/298/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/298/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/298/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/298/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/298/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/298/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/298/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/298/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=298&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2010/06/23/usertile-automation-part-1/feed/</wfw:commentRss>
		<slash:comments>16</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e5d625f8daa701b969ef654f169de4e5?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">ioamnesia</media:title>
		</media:content>
	</item>
		<item>
		<title>Introduction</title>
		<link>http://deployment.xtremeconsulting.com/2010/06/23/introduction/</link>
		<comments>http://deployment.xtremeconsulting.com/2010/06/23/introduction/#comments</comments>
		<pubDate>Wed, 23 Jun 2010 19:53:32 +0000</pubDate>
		<dc:creator>Micah Rowland</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://deployment.xtremeconsulting.com/?p=295</guid>
		<description><![CDATA[My name is Micah Rowland and I have been added to the Xtreme Deployment consulting group as an expert in automation and reverse engineering. As we all know, some of the tasks that customers ask of us to accomplish during the MDT process are very simple to do manually, but in the background, are tricky [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=295&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>My name is Micah Rowland and I have been added to the Xtreme Deployment consulting group as an expert in automation and reverse engineering. As we all know, some of the tasks that customers ask of us to accomplish during the MDT process are very simple to do manually, but in the background, are tricky to nail down when we go to automate the same processes.  In my posts, I hope to reveal undocumented aspects to the Windows operating system and show how to develop automation around these processes. Let&#8217;s get started!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/295/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/295/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/295/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/295/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/295/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/295/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/295/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/295/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/295/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/295/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/295/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/295/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/295/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/295/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=295&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2010/06/23/introduction/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e5d625f8daa701b969ef654f169de4e5?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">ioamnesia</media:title>
		</media:content>
	</item>
		<item>
		<title>Xtreme Consulting at MMS 2010!</title>
		<link>http://deployment.xtremeconsulting.com/2010/04/08/xtreme-consulting-at-mms-2010/</link>
		<comments>http://deployment.xtremeconsulting.com/2010/04/08/xtreme-consulting-at-mms-2010/#comments</comments>
		<pubDate>Thu, 08 Apr 2010 17:48:23 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[Announcements]]></category>
		<category><![CDATA[MDT 2010]]></category>
		<category><![CDATA[Speaking Engagements]]></category>

		<guid isPermaLink="false">http://deployment.xtremeconsulting.com/?p=290</guid>
		<description><![CDATA[Xtreme Consulting Group is going to have a great presence at the Microsoft Management Summit 2010 in Las Vegas Nevada on April 19th through April 23rd. We have Speakers, Consultants, and Technical Professionals there to assist with Hands on Labs (Fun stuff). Microsoft Deployment Toolkit Developer/Gurus Tim Mintner and Keith Garner will be there too. Get the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=290&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><a href="http://deployment.xtremeconsulting.com/">Xtreme Consulting Group</a> is going to have a great presence at the Microsoft Management Summit 2010 in Las Vegas Nevada on April 19<sup>th</sup> through April 23<sup>rd</sup>.</p>
<p>We have Speakers, Consultants, and Technical Professionals there to assist with Hands on Labs (Fun stuff).</p>
<p><a href="http://microsoft.com/deployment">Microsoft Deployment Toolkit</a> Developer/Gurus Tim Mintner and Keith Garner will be there too. Get the inner workings of MDT 2010, and find out what&#8217;s going to be in MDT 2010 Update 1!</p>
<p>See you there!</p>
<p>Two &#8220;Birds-of-a-Feather&#8221; sessions you can count on us to be at:</p>
<p><strong>OE01 Ask the Experts: Microsoft Deployment Toolkit (MDT) 2010</strong></p>
<p>Tuesday, April 20 5:30 PM &#8211; 6:30 PM, Marco Polo 702 </p>
<p><strong>Speaker(s):</strong> <span style="text-decoration:underline;">Michael Niehaus</span></p>
<p><strong>Track(s):</strong> Client Management Technologies, Solution Accelerators, Systems Management</p>
<p><strong>Session Type(s):</strong> Birds-of-a-Feather</p>
<p><strong>Products(s):</strong> Configuration Manager 2007, Microsoft Deployment Toolkit, Windows Client</p>
<p>Here&#8217;s your chance to sit down with the team who are building MDT 2010, troubleshooting customer scenarios, blogging about the latest and greatest solutions and planning the next generation of deployment tools. Bring your questions about MDT 2010 to this Birds-of-a-feather session and find out how to apply the latest solutions to your specific scenarios.</p>
<p><strong>OE31 Open Forum Discussion: Microsoft Deployment Toolkit 2010 (MDT) and Configuration Manager 2007 OSD</strong></p>
<p>Tuesday, April 20 6:45 PM &#8211; 7:45 PM, Marco Polo 702 </p>
<p>Speaker(s): Chris Nackers</p>
<p>Track(s): Client Management Technologies, Solution Accelerators, Systems Management</p>
<p>Session Type(s): Birds-of-a-Feather</p>
<p>Products(s): Configuration Manager 2007, Microsoft Deployment Toolkit, Windows Client</p>
<p>Time to sit down with fellow OSD/MDT users and share your experiences around OSD/MDT in the real world. Come join Chris Nackers and others to discuss lessons learned around MDT and OSD in general in an Open Forum discussion.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/290/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/290/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/290/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/290/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/290/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/290/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/290/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/290/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/290/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/290/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/290/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/290/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/290/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/290/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=290&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2010/04/08/xtreme-consulting-at-mms-2010/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>
	</item>
		<item>
		<title>Assign Drivers to Computer Makes and Models</title>
		<link>http://deployment.xtremeconsulting.com/2010/03/11/assign-drivers-to-computer-makes-and-models/</link>
		<comments>http://deployment.xtremeconsulting.com/2010/03/11/assign-drivers-to-computer-makes-and-models/#comments</comments>
		<pubDate>Thu, 11 Mar 2010 17:00:35 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/?p=284</guid>
		<description><![CDATA[Speaking of Make and Models&#8230; one of the things I&#8217;ve been experimenting with lately is mixing driver management styles (grouping by Make+Model vs PnPID).     Make/Model Match Historically, if you had different hardware platforms, and you wanted to install drivers on each type, you would create separate packages for each Make and Model. Then [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=284&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal" style="margin:0;"><span style="font-family:&amp;font-size:10pt;">Speaking of Make and Models&#8230; one of the things I&#8217;ve been experimenting with lately is mixing driver management styles (grouping by Make+Model vs PnPID). </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-family:&amp;font-size:10pt;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-family:&amp;font-size:10pt;"> </span></p>
<h3>Make/Model Match</h3>
<p class="MsoNormal" style="margin:0;"><span style="font-family:&amp;font-size:10pt;">Historically, if you had different hardware platforms, and you wanted to install drivers on each type, you would create separate packages for each Make and Model. Then you could query the Make and Model information from the BIOS to determine which package to install.</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-family:&amp;font-size:10pt;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-family:&amp;font-size:10pt;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-family:&amp;font-size:10pt;">For example here are four Make+Model examples:</span></p>
<table border="0" cellspacing="0" cellpadding="2" width="400">
<tbody>
<tr>
<td width="200" valign="top"><strong>Make</strong></td>
<td width="200" valign="top"><strong>Model</strong></td>
</tr>
<tr>
<td width="200" valign="top">Dell</td>
<td width="200" valign="top">D630</td>
</tr>
<tr>
<td width="200" valign="top">Dell</td>
<td width="200" valign="top">D830</td>
</tr>
<tr>
<td width="200" valign="top">HP</td>
<td width="200" valign="top">DC7800</td>
</tr>
<tr>
<td width="200" valign="top">HP</td>
<td width="200" valign="top">DC7900</td>
</tr>
</tbody>
</table>
<p><span style="font-family:&amp;font-size:10pt;"></p>
<p class="MsoNormal" style="margin:0;"><span style="font-family:&amp;font-size:10pt;">The disadvantage of this method is that you have to update the driver packages when new Models come along, and it’s also possible that you might keep multiple instances of the same driver package across many Make and Model repositories.</span> </p>
<p class="MsoNormal" style="margin:0;"><span style="font-family:&amp;font-size:10pt;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-family:&amp;font-size:10pt;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-family:&amp;font-size:10pt;"> </span></p>
<h3>PnP-ID Match</h3>
<p class="MsoNormal" style="margin:0;"><span style="font-family:&amp;font-size:10pt;">With MDT, ZTIDrivers.wsf was designed to do things in a different manner. Instead of downloading drivers and grouping them based on Make/Model, you would import the driver directly into MDT, MDT would parse the driver package, and MDT would install the driver package on the machine if the Plug and Play ID matched. </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-family:&amp;font-size:10pt;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-family:&amp;font-size:10pt;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-family:&amp;font-size:10pt;">For example, Windows might search for Plug and Play ID’s that look like:</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-family:&amp;font-size:10pt;"> </span></p>
<pre>PCI\VEN_1099&amp;DEV_0242&amp;SUBSYS_02429005&amp;REV_01
PCI\VEN_1099&amp;DEV_0242&amp;SUBSYS_02429005
PCI\VEN_1099&amp;DEV_0242&amp;CC_010401
PCI\VEN_1099&amp;DEV_0242&amp;CC_0104
PCI\VEN_1099&amp;DEV_0242&amp;REV_01
PCI\VEN_1099&amp;DEV_0242
PCI\VEN_1099&amp;CC_010401
PCI\VEN_1099&amp;CC_0104
PCI\VEN_1099
PCI\CC_010401
PCI\CC_0104</pre>
<p class="MsoNormal" style="margin:0;"><span style="font-family:&amp;font-size:10pt;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-family:&amp;font-size:10pt;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-family:&amp;font-size:10pt;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-family:&amp;font-size:10pt;">Generally this system works better than copying based on Make and Model except for a few points: </span></p>
<ul>
<li>
<div class="MsoNormal" style="margin:0;"><span style="font-family:&amp;font-size:10pt;">You must import the drivers in a correct fashion so MDT can parse the INF files, and so each driver package is a seperate entry (</span><span style="font-family:&amp;font-size:10pt;">more on importing drivers later…)</span></div>
</li>
<li>
<div class="MsoNormal" style="margin:0;"><span style="font-family:&amp;font-size:10pt;">Some PC Makers only certify (support?) a subset of driver versions, so it is possible that MDT <em>may</em> give Windows the latest non-certified version of a driver.</span></div>
</li>
<li>
<div class="MsoNormal" style="margin:0;"><span style="font-family:&amp;font-size:10pt;">There also may be compatibility problems with specific drivers. When placed on some other platforms. (However IMHO, if a driver *can* be installed on a machine, but crashes the machine, then that is a bug of the driver).</span></div>
</li>
</ul>
<p class="MsoNormal" style="margin:0;"><span style="font-family:&amp;font-size:10pt;"> </span></p>
<h3>Hybrid Make-Model + PnPID Match Solution</h3>
<p class="MsoNormal" style="margin:0;"><span style="font-family:&amp;font-size:10pt;">For my MDT environments, </span><span style="font-family:&amp;font-size:10pt;">I don&#8217;t want to place all drivers into Make/Model groupings by <span style="font-family:&amp;"><em>default</em></span>, since I loose the advantages of ZTIDrivers.wsf where it copy by PnPID. </span><span style="font-family:&amp;font-size:10pt;">For example, I have the drivers for my Dell D620 integrated now, but it&#8217;s good to know that I probably have good coverage for any D820&#8242;s out there since they share mostly the same components. </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-family:&amp;font-size:10pt;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-family:&amp;font-size:10pt;">I&#8217;ve seen some MDT implementations that totally throw away the ZTIDrivers.wsf PnPID style in favor of maintaining a manual mapping of drivers to Make+Model. However, I do concede, that there are some drivers out there that &#8220;&#8230; do not play nicely with others&#8230;&#8221;, and need to be quarantined somehow, and according to a make+model works well.</span><span style="color:black;"> </span></p>
<p></span></p>
<p class="MsoNormal" style="margin:0;">
<p class="MsoNormal" style="margin:0;"><span style="color:black;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="color:black;">Create a Folder Structure in MDT Workbench:</span></p>
<table border="0" cellspacing="0" cellpadding="2" width="400">
<tbody>
<tr>
<td width="400" valign="top"><strong>Common</strong></p>
<p>    Audio</p>
<p>    Networking</p>
<p>        Intel</p>
<p>        Marvel</p>
<p>    Storage</p>
<p>    Video</p>
<p><strong>Dell</p>
<p></strong>    <strong>Common</strong></p>
<p>        Audio</p>
<p>        Networking</p>
<p>        Storage</p>
<p>    D620</p>
<p><strong>Hewlett-Packard</strong><strong></p>
<p></strong>    <strong>Common</strong></p>
<p>    DC7800</p>
<p>        Audio</p>
<p>        Networking</p>
<p>        Storage</p>
<p><strong>WinPE</strong></td>
</tr>
</tbody>
</table>
<p class="MsoNormal" style="margin:0;">
<p class="MsoNormal" style="margin:0;"><span style="color:black;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="color:black;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="color:black;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="color:black;">Then in your CustomSettings.ini file, you can add the following:</span> </p>
<pre>DriverGroups001=Common

DriverGroups002=%Make%\Common

DriverGroups003=%Make%\%Model%

DriverSelectionProfile=Nothing</pre>
<p>(Note that DriverSelectionProfile=nothing is required if using DriverGroups).</p>
<p>%Make% and %Model% will be auto-expanded in the customsettings.ini file with the Make and Model values from the system BIOS.</p>
<ul>
<li>If you have a driver that will work for all Makes and Models, then place it under \Common.</li>
<li>If you have a driver that is only supported for a single Manufacturer, then place it under \%Make%\Common.</li>
<li>If you have a driver that only works on a specific Make and Model, then place it under \%Make%\%Model%.</li>
</ul>
<p>This should allow you to use generic drivers by default, moving drivers to specific makes and models when required.</p>
<p>Keith</p>
<address><a href="http://keithga.com"><span style="color:#993300;">Keith Garner</span></a><span style="color:#993300;"> is a Deployment Specialist with </span><a href="http://deployment.xtremeconsulting.com/"><span style="color:#993300;">Xtreme Consulting Group</span></a></address>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/284/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/284/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/284/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/284/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/284/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/284/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/284/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/284/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/284/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/284/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/284/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/284/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/284/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/284/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=284&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2010/03/11/assign-drivers-to-computer-makes-and-models/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>
	</item>
		<item>
		<title>Keith Garner on MDT 2010</title>
		<link>http://deployment.xtremeconsulting.com/2010/03/10/keith-garner-on-mdt-2010/</link>
		<comments>http://deployment.xtremeconsulting.com/2010/03/10/keith-garner-on-mdt-2010/#comments</comments>
		<pubDate>Wed, 10 Mar 2010 23:37:46 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[Announcements]]></category>
		<category><![CDATA[MDT 2010]]></category>
		<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[Speaking Engagements]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/?p=283</guid>
		<description><![CDATA[(It&#8217;s been busy around here at Xtreme Consulting)&#8230; Keith was interviewed on the PowerScripting Podcast last week! MDT 2010 uses Powershell quite extensively for Server Management, and Xtreme Deployment has been developing custom scripts for MDT 2010. You can hear the podcast here. - Keith Keith Garner is a Deployment Specialist with Xtreme Consulting Group<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=283&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><em>(It&#8217;s been busy around here at Xtreme Consulting)&#8230;</em></p>
<p>Keith was interviewed on the <a href="http://powerscripting.wordpress.com">PowerScripting Podcast</a> last week!</p>
<p>MDT 2010 uses Powershell quite extensively for Server Management, and Xtreme Deployment has been developing custom scripts for MDT 2010.</p>
<p>You can hear the podcast <a href="http://powerscripting.wordpress.com/2010/03/07/episode-104-keith-garner-on-mdt-2010/">here</a>.</p>
<p>- Keith</p>
<address><a href="http://keithga.com"><span style="color:#993300;">Keith Garner</span></a><span style="color:#993300;"> is a Deployment Specialist with </span><a href="http://deployment.xtremeconsulting.com/"><span style="color:#993300;">Xtreme Consulting Group</span></a></address>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/283/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/283/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/283/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/283/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/283/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/283/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/283/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/283/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/283/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/283/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/283/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/283/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/283/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/283/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=283&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2010/03/10/keith-garner-on-mdt-2010/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>
	</item>
		<item>
		<title>Bitlocker Recovery Password saved to file</title>
		<link>http://deployment.xtremeconsulting.com/2010/01/22/bitlocker-recovery-password-saved-to-file/</link>
		<comments>http://deployment.xtremeconsulting.com/2010/01/22/bitlocker-recovery-password-saved-to-file/#comments</comments>
		<pubDate>Fri, 22 Jan 2010 17:00:21 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[MDT 2010]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/?p=276</guid>
		<description><![CDATA[Saw a question posted recently: In MDT deployment I have Bitlocker set to save the recovery key to AD.  However, I am noticing that it is also copying the recovery key to either C: root or the USB flash drive.  How do I control this behavior? In MDT 2010, the ZTIBDE.wsf script will perform most [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=276&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Saw a question posted recently:</p>
<blockquote><p>In MDT deployment I have Bitlocker set to save the recovery key to AD.  However, I am noticing that it is also copying the recovery key to either C: root or the USB flash drive.  How do I control this behavior?</p></blockquote>
<p>In MDT 2010, the ZTIBDE.wsf script will perform most nasty administrative tasks in the background automatically. That is the beauty of MDT. However, some administrators may wish to control this Recovery File in a manner other than the default, which is to save the file to the C: drive or to a USB Key.</p>
<p>MDT Saves the recovery key even though the administrator told MDT to save the Password into Active Directory, as a backup process, just in case AD was *not* able to save the data to AD.</p>
<h3>Disable Key Save</h3>
<p>There are two ways to prevent ZTIBDE.wsf from saving the Administrator password in Active Directory.</p>
<p>Either:</p>
<p>Comment out lines 722 – 724 in the ZTIBDE.wsf script. (MDT 2010 Only).</p>
<p>or:</p>
<p>Set the variable in your customsettings.ini file to point to a location that is cleaned at the end of the Task Sequence process:</p>
<p>BDEKeyLocation=%SystemDrive%\minint\</p>
<p>If you don’t save the Password, and the AD backup of the recovery key fails for some reason, you will have no record of the recovery key.</p>
<p>Keith</p>
<address><a href="http://keithga.com"><span style="color:#993300;">Keith Garner</span></a><span style="color:#993300;"> is a Deployment Specialist with </span><a href="http://deployment.xtremeconsulting.com/"><span style="color:#993300;">Xtreme Consulting Group</span></a></address>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/276/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/276/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/276/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/276/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/276/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/276/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/276/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/276/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/276/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/276/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/276/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/276/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/276/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/276/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=276&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2010/01/22/bitlocker-recovery-password-saved-to-file/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>
	</item>
		<item>
		<title>How MDT does Application Installation</title>
		<link>http://deployment.xtremeconsulting.com/2010/01/20/how-mdt-does-application-installation/</link>
		<comments>http://deployment.xtremeconsulting.com/2010/01/20/how-mdt-does-application-installation/#comments</comments>
		<pubDate>Wed, 20 Jan 2010 17:00:57 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[MDT 2010]]></category>
		<category><![CDATA[Troubleshooting]]></category>
		<category><![CDATA[VBscript]]></category>
		<category><![CDATA[Windows 7]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/?p=268</guid>
		<description><![CDATA[Been working lately on adding some Application Installation packages to MDT, and I’ve seen some good, bad, and ugly packages. So, what makes an application installation compatible with MDT (or other scripted installation methods, for that matter)? Good question. Microsoft Installer (MSI) The good! More and more products are being released lately as MSI packages. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=268&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Been working lately on adding some Application Installation packages to MDT, and I’ve seen some good, bad, and ugly packages.</p>
<blockquote><p>So, what makes an application installation compatible with MDT (or other scripted installation methods, for that matter)?</p></blockquote>
<p>Good question.</p>
<h3>Microsoft Installer (MSI)</h3>
<p>The good!</p>
<p>More and more products are being released lately as MSI packages. Most MSI Packages are easy to automate. For example, I typically use the following parameters:</p>
<p>Msiexec.exe /qb- /l*vx  %LogPath%\&lt;file&gt;.log REBOOT=ReallySuppress UILevel=67 ALLUSERS=2 /i &lt;File&gt;.msi</p>
<p>MDT will easily handle this installation script, and install properly for most MSI packages. Yea!</p>
<h3>Non-MSI Packages</h3>
<p>However, it is possible that you are working with a custom installation package, or perhaps developing your own. What are the rules necessary to make the package work in MDT?</p>
<h3>Rule 1: Provide unattended installs</h3>
<p>The install program should have a way to install in a unattended manner. Typically this is done by some sort of command line switch to the installer program or script: /quiet /silent /q whatever. MDT 2010 is a fully automated installation system, and the automation will break if there are any user prompts blocking installation.</p>
<p>For example, if you have a MSI installer package, you can call MSIExec.exe with the /q[bn][-] parameter.</p>
<p>This also equally important for errors. If the install package generates errors, it should provide a method to log the errors to a file for analysis later, rather than prompting the user for interaction with a blocking Error Message Box.</p>
<h3>Rule 2: Do not exit until done</h3>
<p>The install programs should not exit until all setup tasks have finished. If the setup program returns, yet there are still installation tasks being performed in the background, MDT has no way to determine this. So MDT may continue with the next installation, or perhaps a reboot thus causing conflicts with the installation running in the background.</p>
<p>For example, say you have two installation packages, A.Exe and B.Msi. A.Exe is just a Self Extracting Executable that expands A.MSI to the %temp% folder, and kicks off msiexec.exe. However, A.Exe calls msiexec.exe and doesn’t wait, instead A.Exe promptly exits. MDT does not know what is running in the background, and instead continues installing the next package in the list B.Msi. However since A.Msi is running in the backgound, and MSIExec only allows one installation at a time, B.Msi will fail.</p>
<p>Instead A.Exe should wait until Msiexec.exe /i A.msi has finished.</p>
<h3>Rule 3: No rebooting</h3>
<p>Sometimes an install package will need to reboot to complete the installation. Reboots, for example, are required to update any file that is already open and in use. It’s a common misconception that you need to reboot to install a device driver, you don’t (unless the driver is in use).</p>
<p>However problems arise if the setup program, when running in an unattended matter, decides to reboot on it’s own, without letting the calling script (in this case MDT), know before hand. It may be a couple of seconds before all processes have a chance to shutdown. It’s possible that MDT may try to continue installing the next program in the order or other cleanup tasks, when it shouldn’t.</p>
<p>Instead, a program should return <a href="http://msdn.microsoft.com/en-us/library/ms819773.aspx">Windows.h</a> Error Code: 3010 ( ERROR_SUCCESS_REBOOT_REQUIRED ).</p>
<p>This will let MDT know that a reboot is required, reboot the machine, and *then* continue with the rest of the installation packages.</p>
<h3>Other Notes</h3>
<p>There are a few other notes that I wish I could mention to the authors of installation packages:</p>
<ul>
<li>Be aware that the installation may be performed under one user account, but the program may be used under another account. When calling MSIExec.exe, I usually call it with the ALLUSERS=2 property.</li>
<li>Please make it easy to determine what the unattended/silent installation procedures are. It’s not always easy to determine what the command line parameters are.</li>
<li>If you have a Self Extracting Executable that calls msiexec.exe, please provide a way to pass logging and other properties (see above) to msiexec.exe.</li>
<li>Speaking of Self Extracting Exe files that call *.msi packages. Please just provide the *.msi install package, it’s much easier.</li>
<li>On your web site, please provide direct access to your install packages, rather than going through some web logic. Several populat sites, for example will attempt to offer you *only* the x86 or x64 binaries depending on which platform you are running on, even though I may need both for packaging.</li>
<li>Please keep the desktop free from links/icons, or provide a property in MSI to disable shortcuts creation on the desktop (I’m talking to you Adobe Reader). I like keeping my desktop clean.</li>
<li>Speaking of options, please provide ways on the command line to enable/disable most common features.</li>
</ul>
<p> </p>
<p>Keith</p>
<address><a href="http://keithga.com"><span style="color:#993300;">Keith Garner</span></a><span style="color:#993300;"> is a Deployment Specialist with </span><a href="http://deployment.xtremeconsulting.com/"><span style="color:#993300;">Xtreme Consulting Group</span></a></address>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/268/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/268/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/268/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/268/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/268/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/268/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/268/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/268/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/268/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/268/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/268/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/268/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/268/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/268/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=268&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2010/01/20/how-mdt-does-application-installation/feed/</wfw:commentRss>
		<slash:comments>14</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>
	</item>
		<item>
		<title>Great Overview on Windows Deployment A-Z&#8230;</title>
		<link>http://deployment.xtremeconsulting.com/2010/01/18/great-overview-on-windows-deployment-a-z/</link>
		<comments>http://deployment.xtremeconsulting.com/2010/01/18/great-overview-on-windows-deployment-a-z/#comments</comments>
		<pubDate>Tue, 19 Jan 2010 01:27:55 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[Announcements]]></category>
		<category><![CDATA[MDT 2010]]></category>
		<category><![CDATA[Windows 7]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/?p=273</guid>
		<description><![CDATA[Our friend Jeremy Chapman has written a whitepaper: Deploying Windows 7 from A to Z.doc http://www.microsoft.com/downloads/details.aspx?displaylang=en&#38;FamilyID=dfafb346-97dd-4fca-947e-3d9149834da6 It’s a good introductory reference to MDT, SCCM, and Deployment in general. Keith Keith Garner is a Deployment Specialist with Xtreme Consulting Group<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=273&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Our friend Jeremy Chapman has written a whitepaper:</p>
<p>Deploying Windows 7 from A to Z.doc<br />
<a href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;FamilyID=dfafb346-97dd-4fca-947e-3d9149834da6">http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;FamilyID=dfafb346-97dd-4fca-947e-3d9149834da6</a></p>
<p>It’s a good introductory reference to MDT, SCCM, and Deployment in general.</p>
<p>Keith</p>
<address><a href="http://keithga.com"><span style="color:#993300;">Keith Garner</span></a><span style="color:#993300;"> is a Deployment Specialist with </span><a href="http://deployment.xtremeconsulting.com/"><span style="color:#993300;">Xtreme Consulting Group</span></a></address>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/273/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/273/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/273/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/273/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/273/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/273/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/273/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/273/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/273/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/273/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/273/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/273/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/273/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/273/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=273&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2010/01/18/great-overview-on-windows-deployment-a-z/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>
	</item>
		<item>
		<title>This week in OS Deployment</title>
		<link>http://deployment.xtremeconsulting.com/2010/01/15/this-week-in-os-deployment/</link>
		<comments>http://deployment.xtremeconsulting.com/2010/01/15/this-week-in-os-deployment/#comments</comments>
		<pubDate>Fri, 15 Jan 2010 22:20:29 +0000</pubDate>
		<dc:creator>tmintner</dc:creator>
				<category><![CDATA[Announcements]]></category>
		<category><![CDATA[MDT 2010]]></category>
		<category><![CDATA[MDT]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/2010/01/15/this-week-in-os-deployment/</guid>
		<description><![CDATA[Hey Everyone! &#160; There has been several items posted in the OS Deployment community this week that you should definitely know about: &#160; New KB Article published on USMT and MDT 2010.&#160; This will fix issues when migrating items such as Operating System specific settings like network shares, printers, and EFS certificates.&#160; This is a [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=267&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Hey Everyone!</p>
<p>&#160;</p>
<p>There has been several items posted in the OS Deployment community this week that you should definitely know about:</p>
<p>&#160;</p>
<p><a href="http://support.microsoft.com/kb/977565">New KB Article published on USMT and MDT 2010</a>.&#160; This will fix issues when migrating items such as Operating System specific settings like network shares, printers, and EFS certificates.&#160; This is a must have fix for MDT 2010!</p>
<p>&#160;</p>
<p>The <a href="http://blogs.technet.com/deploymentguys">Deployment Guys</a> also posted two great stories this week:</p>
<p><a href="http://blogs.technet.com/deploymentguys/archive/2010/01/15/added-support-for-802-1x-in-windows-pe.aspx">802.1x Security for Windows PE</a>!&#160; This has been a much requested feature to add 802.1x security to Windows PE.&#160; </p>
<p>They also posted a great article on how to migrate time zone settings from an existing computer during an installation:</p>
<p><a href="http://blogs.technet.com/deploymentguys/archive/2010/01/11/setting-mdt-time-zone-variables-from-the-source-os-time-zone.aspx">http://blogs.technet.com/deploymentguys/archive/2010/01/11/setting-mdt-time-zone-variables-from-the-source-os-time-zone.aspx</a></p>
<p>&#160;</p>
<p>Enjoy and have a great week!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/267/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/267/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/267/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/267/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/267/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/267/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/267/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/267/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/267/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/267/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/267/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/267/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/267/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/267/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=267&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2010/01/15/this-week-in-os-deployment/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/240858a50784c41cedfbc35048e21064?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">tmintner</media:title>
		</media:content>
	</item>
		<item>
		<title>Water Water everywhere&#8230;</title>
		<link>http://deployment.xtremeconsulting.com/2010/01/07/water-water-everywhere/</link>
		<comments>http://deployment.xtremeconsulting.com/2010/01/07/water-water-everywhere/#comments</comments>
		<pubDate>Fri, 08 Jan 2010 07:30:58 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/?p=263</guid>
		<description><![CDATA[I was walking in through the Lobby of Microsoft building 18 yesterday, and someone came in to tell the receptionist that there was a burst water main leaking in the building. Unfortunately, this is a normal occurrence in Microsoft Building 18. And has happened every year since 2007, and typically localized arround the Microsoft Deployment [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=263&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I was walking in through the Lobby of Microsoft building 18 yesterday, and someone came in to tell the receptionist that there was a burst water main leaking in the building. Unfortunately, this is a <strong><em>normal</em></strong> occurrence in Microsoft Building 18. And has happened <strong><em>every</em></strong> year since 2007, and typically localized arround the Microsoft Deployment Toolkit team members.</p>
<p>Luckily, this year, we found most Team Members, and we were disconnecting machines from power before the flood waters came. And were also able to get critical machines out before the moving crews came to cart the equipment out to an undisclosed location during repairs.</p>
<p>For example, here is what the office of Mike Niehaus looked like yesterday.</p>
<p><a href="http://tmintner.files.wordpress.com/2010/01/img_1625.jpg"><img style="display:inline;border:0;" title="IMG_1625" src="http://tmintner.files.wordpress.com/2010/01/img_1625_thumb.jpg?w=244&h=184" border="0" alt="IMG_1625" width="244" height="184" /></a></p>
<p>His entire office is now completely bare, and cleaning crews are doing their thing.</p>
<p>It’s been a crazy start to 2010! Hopefully things will calm down and I&#8217;ll start posting more soon.</p>
<p>Keith</p>
<address><a href="http://keithga.com"><span style="color:#993300;">Keith Garner</span></a><span style="color:#993300;"> is a Deployment Specialist with </span><a href="http://deployment.xtremeconsulting.com/"><span style="color:#993300;">Xtreme Consulting Group</span></a></address>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/263/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/263/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/263/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/263/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/263/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/263/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/263/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/263/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/263/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/263/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/263/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/263/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/263/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/263/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=263&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2010/01/07/water-water-everywhere/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>

		<media:content url="http://tmintner.files.wordpress.com/2010/01/img_1625_thumb.jpg" medium="image">
			<media:title type="html">IMG_1625</media:title>
		</media:content>
	</item>
		<item>
		<title>MDT Forum on Technet</title>
		<link>http://deployment.xtremeconsulting.com/2009/12/17/mdt-forum-on-technet/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/12/17/mdt-forum-on-technet/#comments</comments>
		<pubDate>Thu, 17 Dec 2009 20:04:16 +0000</pubDate>
		<dc:creator>tmintner</dc:creator>
				<category><![CDATA[Announcements]]></category>
		<category><![CDATA[MDT 2010]]></category>
		<category><![CDATA[MDT]]></category>
		<category><![CDATA[Support]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/2009/12/17/mdt-forum-on-technet/</guid>
		<description><![CDATA[If you have MDT related support questions that you don’t think can be answered in a blog comment, come on over to the MDT Forum on Technet.&#160; Keith and I both have been answering support questions there. &#160; http://social.technet.microsoft.com/Forums/en-US/mdt/threads &#160; See ya there! &#160; - Tim<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=260&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>If you have MDT related support questions that you don’t think can be answered in a blog comment, come on over to the MDT Forum on Technet.&#160; Keith and I both have been answering support questions there.</p>
<p>&#160;</p>
<p><a href="http://social.technet.microsoft.com/Forums/en-US/mdt/threads">http://social.technet.microsoft.com/Forums/en-US/mdt/threads</a></p>
<p>&#160;</p>
<p>See ya there!</p>
<p>&#160;</p>
<p>- Tim</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/260/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/260/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/260/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/260/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/260/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/260/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/260/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/260/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/260/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/260/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/260/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/260/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/260/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/260/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=260&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/12/17/mdt-forum-on-technet/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/240858a50784c41cedfbc35048e21064?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">tmintner</media:title>
		</media:content>
	</item>
		<item>
		<title>Friendly names when Selecting the Domain OU in MDT 2010</title>
		<link>http://deployment.xtremeconsulting.com/2009/12/11/friendly-names-when-selecting-the-domain-ou-in-mdt-2010/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/12/11/friendly-names-when-selecting-the-domain-ou-in-mdt-2010/#comments</comments>
		<pubDate>Fri, 11 Dec 2009 17:00:03 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[MDT 2010]]></category>
		<category><![CDATA[VBscript]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/?p=255</guid>
		<description><![CDATA[Came across a question in a forum recently: In MDT 2010 when I am in the Deployment Wizard I can select the option to join a domain, enter in my domain and near the bottom I have the option to select my OU with a dropdown menu. Within my control folder of my deployment share [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=255&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Came across a question in a forum recently:</p>
<blockquote><p>In MDT 2010 when I am in the Deployment Wizard I can select the option to join a domain, enter in my domain and near the bottom I have the option to select my OU with a dropdown menu.<br />
Within my control folder of my deployment share I have a file called DomainOUList.xml that has a long list of all the OUs I want our techs to be able to select from. The structure of the file looks something like this:</p>
<p>&lt;DomainOUs&gt;<br />
&lt;DomainOU&gt;OU=Desktops,OU=Accounting,OU=Calgary,DC=MYDOMAIN,DC=AD&lt;/DomainOU&gt;<br />
…</p>
<p>How can I make it look like this:<br />
Laptops / Accounting / Calgary / MYDOMAIN<br />
…</p></blockquote>
<p>I did some investigation, and discovered that MDT lacks the ability to display Friendly names in the Domain OU selection on the dialog box. This is a problem all the way back to BDD 2007.</p>
<p>Something I forgot to do.</p>
<h3>Updated change</h3>
<p>It s quick change to DeployWiz_Initialization.vbs to make the wizard display friendly names rather than the OU style.</p>
<p>First we introduce a new set of functions:</p>
<pre>Function AddItemToMachineObjectOUOpt(item)   AddItemToMachineObjectOUOptEx item, itemEnd function

Function AddItemToMachineObjectOUOptEx(item,value)  Dim oOption

  set oOption = document.createElement("OPTION")  oOption.Value = value  oOption.Text = item  MachineObjectOUOptional.Add oOption  MachineObjectOUOptionalBtn.style.display = "inline"End function</pre>
<p>I personally like to add *EX style function like this, it means that we can reduce the number of changed lines in the code, and keep the old version of the function around for compatibility.</p>
<p>Then later on we modify the code to read the DomainOUList.xml:</p>
<pre>iRetVal = oUtility.FindFile( "DomainOUList.xml" , sFoundFile)
if iRetVal = SUCCESS then     For each oItem in oUtility.CreateXMLDOMObjectEx( sFoundFile ).selectNodes("//DomainOUs/DomainOU")

        if oItem.Attributes.getNamedItem("value") is nothing then             AddItemToMachineObjectOUOpt oItem.text         else
            AddItemToMachineObjectOUOptEx oItem.text, oItem.Attributes.getNamedItem("value").value         end if     Next
End if</pre>
<p>If the DomainOUList.xml file contains a value attribute in the XML file, it will use that for the value, and the node for the Friendly Name:</p>
<pre>&lt;DomainOUs&gt;
 &lt;DomainOU&gt;OU=Desktops,OU=Accounting,OU=Calgary,DC=MYDOMAIN,DC=AD&lt;/DomainOU&gt;
 &lt;DomainOU value="OU=Desktops,OU=Accounting,OU=Calgary,DC=MYDOMAIN,DC=AD" &gt; DomainCalgaryAccountingDesktops &lt;/DomainOU&gt;
&lt;/DomainOUs&gt;</pre>
<p>Full sample can be found at:</p>
<p><a title="DeployWiz_Initialization.vbs" href="http://cid-5407b03614346a99.office.live.com/self.aspx/Blog/DeployWiz%5E_Initialization.zip">DeployWiz_Initialization.vbs</a></p>
<p>Keith</p>
<address><a href="http://keithga.com"><span style="color:#993300;">Keith Garner</span></a><span style="color:#993300;"> is a Deployment Specialist with </span><a href="http://deployment.xtremeconsulting.com/"><span style="color:#993300;">Xtreme Consulting Group</span></a></address>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/255/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/255/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/255/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/255/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/255/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/255/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/255/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/255/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/255/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/255/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/255/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/255/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/255/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/255/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=255&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/12/11/friendly-names-when-selecting-the-domain-ou-in-mdt-2010/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>
	</item>
		<item>
		<title>MDT 2010 Application ordering (New Tool)</title>
		<link>http://deployment.xtremeconsulting.com/2009/12/09/mdt-2010-application-ordering-new-tool/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/12/09/mdt-2010-application-ordering-new-tool/#comments</comments>
		<pubDate>Wed, 09 Dec 2009 18:21:55 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[MDT 2010]]></category>
		<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[VBscript]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/?p=250</guid>
		<description><![CDATA[Got an E-Mail from a friend of mine recently: Are you bored? Might be a good utility to build. The PowerShell script [..] posted at http://blogs.technet.com/mniehaus/archive/2009/09/09/sorting-the-contents-of-an-mdt-2010-deployment-share.aspx shows how to rearrange the items in a folder &#8211; basically, it just reorders the GUIDs in the group and then saves the modified GUID list. The script only [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=250&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Got an E-Mail from a friend of mine recently:</p>
<blockquote><p>Are you bored? <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  Might be a good utility to build. The PowerShell script [..] posted at <a href="http://blogs.technet.com/mniehaus/archive/2009/09/09/sorting-the-contents-of-an-mdt-2010-deployment-share.aspx">http://blogs.technet.com/mniehaus/archive/2009/09/09/sorting-the-contents-of-an-mdt-2010-deployment-share.aspx</a> shows how to rearrange the items in a folder &#8211; basically, it just reorders the GUIDs in the group and then saves the modified GUID list. The script only does alphabetical sorting, but some might want to manually rearrange &#8211; not terribly easy to do in PowerShell, so it would require a real UI.</p></blockquote>
<p>For most scenarios, I recommend using Application Dependencies to ensure that applications install in the correct order.</p>
<p>I really didn’t think much of it until recently. When I had some applications that could install stand alone, by themselves, however when both were installed, they needed to be installed in a specific order. If I were creating a CustomSettings.ini file, I would manually ensure that the Applications were placed in order. However, if the user selected the applications from the wizard, then there was no way to ensure the order of the apps unless we modified the order within the ApplicationGroups.xml manually. &lt;yuck&gt;</p>
<p>The blog above shows how application ordering can be done. Simply create a temporary sub-folder, an move the items *in order* to the temporary subfolder and then move everything back.</p>
<h3>Solution</h3>
<p>This solution should work for sorting both Folders and Application Items within MDT 2010. The application is a simple wrapper around the MDT 2010 Powershell provider, and simply makes calls to move Applications and/or folders using Powershell.</p>
<h3>User Interface</h3>
<p>The wizard will prompt you for the correct MDT 2010 Deployment Share to use. The deployment share must be visible within the MDT 2010 console on the same machine and using the same user account. If you have not opened any MDT 2010 Deployment shares on this computer and this account, please run the MDT 2010 console, and open your Deployment Share.</p>
<p>When selected, the wizard will display a list of all applications and application folders present on the MDT 2010 Deployment share. You may highlight the Application you wish to move, and use the “Move Up” and “Move Down” buttons to rearrange the order of the application. </p>
<p><a href="http://tmintner.files.wordpress.com/2009/12/image.png"><img style="display:inline;border:0;" title="image" src="http://tmintner.files.wordpress.com/2009/12/image_thumb.png?w=244&h=193" border="0" alt="image" width="244" height="193" /></a> </p>
<p>When you are done, press the “Commit” button to run the Powershell script that performs the re-ordering. The applications will not be sorted until the script has finished running.</p>
<p>The MDT 2010 Powershell Provider will do all the necessary work to ApplicaitonGroups.xml on the back end.</p>
<p><a href="http://tmintner.files.wordpress.com/2009/12/image1.png"><img style="display:inline;border:0;" title="image" src="http://tmintner.files.wordpress.com/2009/12/image_thumb1.png?w=244&h=193" border="0" alt="image" width="244" height="193" /></a></p>
<p>You can view the script by saving the results to a txt file.</p>
<h3>Restrictions and Limitations</h3>
<p>It is recommended that you backup your MDT 2010 deployment periodically,</p>
<p>You can sort the contents of only one folder at a time.</p>
<p>You can not sort Folders within Application entries. Folders are always displayed first.</p>
<h3>Link</h3>
<p><a href="http://cid-5407b03614346a99.office.live.com/self.aspx/Blog/MDT2010Ordering.zip">http://cid-5407b03614346a99.office.live.com/self.aspx/Blog/MDT2010Ordering.zip</a></p>
<h3>License</h3>
<p>This tool is provided “as-is”, with no warranties.<br />
You agree not to hold the author, Keith Garner liable for any damages.<br />
This tool is provided “Free of Charge” for “Evaluation” purposes only.<br />
This tool is copyrighted by the author, Keith Garner, and he retains all<br />
ownership, this tool is not public domain.<br />
You are not permitted to redistribute this tool without the express written<br />
consent of the author, Keith Garner.<br />
The license for this tool can be revoked and/or superseded at any time, by the author, Keith Garner.<br />
Of course, you should backup your critical files before running any 3rd party program downloaded off the internet.</p>
<p>By Keith Garner ( <a href="http://keithga.com">http://keithga.com</a> ) – Deployment Consultant &#8211; Dec, 2009<br />
Xtreme Consulting Group ( <a href="http://deployment.xtremeconsulting.com">http://deployment.xtremeconsulting.com</a> )<br />
Microsoft Deployment Toolkit 2010 ( <a href="http://microsoft.com/deployment">http://microsoft.com/deployment</a> )<br />
<strong><span style="color:#ff0000;">Copyright Keith Garner (keithga.com), All Rights Reserved.</span></strong></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/250/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/250/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/250/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/250/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/250/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/250/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/250/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/250/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/250/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/250/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/250/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/250/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/250/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/250/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=250&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/12/09/mdt-2010-application-ordering-new-tool/feed/</wfw:commentRss>
		<slash:comments>20</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>

		<media:content url="http://tmintner.files.wordpress.com/2009/12/image_thumb.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://tmintner.files.wordpress.com/2009/12/image_thumb1.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>
	</item>
		<item>
		<title>New for MDT 2010: ZTIDomainJoin.wsf</title>
		<link>http://deployment.xtremeconsulting.com/2009/12/08/new-for-mdt-2010-ztidomainjoin-wsf/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/12/08/new-for-mdt-2010-ztidomainjoin-wsf/#comments</comments>
		<pubDate>Wed, 09 Dec 2009 06:25:13 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[MDT 2010]]></category>
		<category><![CDATA[VBscript]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/?p=243</guid>
		<description><![CDATA[One of the new scripts for MDT 2010 is the ZTIDomainJoin.wsf script. This script will operate like NetDom.exe, Joining the machine to the Domain specified in the customsettings.ini and/or Deployment Wizard. Normal Process Before MDT 2010, the variables collected in the wizard for joining the domain were placed directly into the unattend.xml or unattend.txt file. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=243&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>One of the new scripts for MDT 2010 is the ZTIDomainJoin.wsf script. This script will operate like NetDom.exe, Joining the machine to the Domain specified in the customsettings.ini and/or Deployment Wizard.</p>
<h3>Normal Process</h3>
<p>Before MDT 2010, the variables collected in the wizard for joining the domain were placed directly into the unattend.xml or unattend.txt file. The OS would then perform the join to the domain during (OOBE) Setup.</p>
<p>This tool came about because of several scenarios that could prevent the machine from successfully joining the domain during Windows Setup. For example. If the network did not have DHCP available, Windows Setup is not programmed with the correct Static IP address settings necessary for the Join Domain feature to contact the domain controller. Later on in the Task Sequence Steps, the ZTINICConfig.wsf script would correctly configure the Network Cards, however it was too late for joining the domain.</p>
<p>So we developed a new script ZTIDomainJoin.wsf as a thin wrapper around the WMI call Win32_ComputerSystem:JoinDomainOrWorkgroup(). If the script sees that the machine is already joined to the correct domain, no problem, it continues on, without any errors. However, if the script sees that a request was made to join the domain, and the machine is *not* in that correct domain, then it will attempt to join the domain and reboot. If there is a failure joining the domain, the script will retry up to 3 times before logging a failure and continuing.</p>
<h3>Domain Policies that break MDT</h3>
<p>Another scenario where this script works well is when a Domain has a Policy that blocks automation. For example a Legal disclaimer at login, or a rename of the local Administrator Account. Either one of these changes will break MDT.</p>
<p>One possible work around in these scenarios is to *remove* the domain join entries in the unattend.xml and unattend.txt templates on your MDT server, or remove the entries in the ZTIConfigure.xml script. Once removed, the ZTIConfigure.wsf script won’t populate the unattend.txt with the correct variables gathered form the CustomSettings.ini file and/or Deployment Wizard.</p>
<p>Then add the ZTIDomainJoin.wsf script near the *end* of the Deployment Task Sequence. Most of the automation will be complete by that point.</p>
<h3>Variables</h3>
<p>It takes the following variables:</p>
<ul>
<li>JoinDomain &#8211; Name of domain to join</li>
<li>DomainAdmin – User Account used to Join Domain (must have permissions to perform Domain Join)</li>
<li>DomainAdminDomain – Domain of User account used to Join Domain</li>
<li>DomainAdminPassword – Password used to Join Domain</li>
<li>MachineObjectOU &#8211; Domain OU to join</li>
<li>DomainErrorRecovery – [Auto|MANUAL|FAIL]
<ul>
<li>Auto – Automatically try to Join to the domain, reboot and retry if there is a failure.</li>
<li>Manual – Stop processing the Task Sequence, and wait for the user to manually join the domain.</li>
<li>Fail – Stop the Task Sequence if the machine has not joined the domain.</li>
</ul>
</li>
</ul>
<h3>Notes</h3>
<p>Fail could be useful if you have applications that *require* the machine to be part of the domain. If for any reason, the machine failed to join the domain, you could call the ZTIDomainJoin.wsf script with the “Fail” Parameter to crash the installation process if the machine is not joined to the domain.</p>
<p>Manual style is a new feature in MDT 2010, where MDT can “Halt” the execution of the Task Sequence, and allow the user the ability to perform manual steps (without the pesky Task Sequence progress bar, which insists that it remain on “top”). Just follow the instructions to restart the task sequence.</p>
<p>Keith</p>
<address><a href="http://keithga.com"><span style="color:#993300;">Keith Garner</span></a><span style="color:#993300;"> is a Deployment Specialist with </span><a href="http://deployment.xtremeconsulting.com/"><span style="color:#993300;">Xtreme Consulting Group</span></a></address>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/243/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/243/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/243/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/243/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/243/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/243/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/243/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/243/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/243/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/243/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/243/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/243/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/243/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/243/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=243&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/12/08/new-for-mdt-2010-ztidomainjoin-wsf/feed/</wfw:commentRss>
		<slash:comments>23</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>
	</item>
		<item>
		<title>RIS Style naming with MDT</title>
		<link>http://deployment.xtremeconsulting.com/2009/12/07/ris-style-naming-with-mdt/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/12/07/ris-style-naming-with-mdt/#comments</comments>
		<pubDate>Mon, 07 Dec 2009 22:40:42 +0000</pubDate>
		<dc:creator>tmintner</dc:creator>
				<category><![CDATA[MDT 2010]]></category>
		<category><![CDATA[Computer Name]]></category>
		<category><![CDATA[GUID]]></category>
		<category><![CDATA[RIS]]></category>
		<category><![CDATA[WDS]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/2009/12/07/ris-style-naming-with-mdt/</guid>
		<description><![CDATA[Michael Niehaus has posted a great article on how to do RIS style naming with Active Directory lookup using a web service.&#160; This seems to be the most common request we hear about when customers are moving off of RIS to MDT.&#160; Check out the article here: http://blogs.technet.com/mniehaus/archive/2009/12/06/ris-style-naming-with-mdt-2010-use-a-web-service.aspx<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=239&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Michael Niehaus has posted a great article on how to do RIS style naming with Active Directory lookup using a web service.&#160; This seems to be the most common request we hear about when customers are moving off of RIS to MDT.&#160; Check out the article here:</p>
<p><a href="http://blogs.technet.com/mniehaus/archive/2009/12/06/ris-style-naming-with-mdt-2010-use-a-web-service.aspx">http://blogs.technet.com/mniehaus/archive/2009/12/06/ris-style-naming-with-mdt-2010-use-a-web-service.aspx</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/239/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/239/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/239/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/239/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/239/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/239/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/239/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/239/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/239/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/239/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/239/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/239/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/239/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/239/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=239&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/12/07/ris-style-naming-with-mdt/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/240858a50784c41cedfbc35048e21064?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">tmintner</media:title>
		</media:content>
	</item>
		<item>
		<title>Happy Thanksgiving!</title>
		<link>http://deployment.xtremeconsulting.com/2009/11/26/happy-thanksgiving/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/11/26/happy-thanksgiving/#comments</comments>
		<pubDate>Thu, 26 Nov 2009 21:48:59 +0000</pubDate>
		<dc:creator>tmintner</dc:creator>
				<category><![CDATA[Announcements]]></category>

		<guid isPermaLink="false">http://deployment.xtremeconsulting.com/?p=237</guid>
		<description><![CDATA[Hey Everyone! Just wanted to wish everyone a very Happy Thanksgiving!  We thank you so much for following our blog entries and really appreciate all of your feedback so far. &#160; - Tim Mintner<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=237&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Hey Everyone!</p>
<p>Just wanted to wish everyone a very Happy Thanksgiving!  We thank you so much for following our blog entries and really appreciate all of your feedback so far.</p>
<p>&nbsp;</p>
<p>- Tim Mintner</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/237/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/237/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/237/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/237/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/237/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/237/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/237/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/237/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/237/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/237/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/237/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/237/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/237/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/237/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=237&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/11/26/happy-thanksgiving/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/240858a50784c41cedfbc35048e21064?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">tmintner</media:title>
		</media:content>
	</item>
		<item>
		<title>Missing XML files when using USMT and ConfigMgr SP2</title>
		<link>http://deployment.xtremeconsulting.com/2009/11/25/missing-xml-files-when-using-usmt-and-configmgr-sp2/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/11/25/missing-xml-files-when-using-usmt-and-configmgr-sp2/#comments</comments>
		<pubDate>Wed, 25 Nov 2009 20:09:34 +0000</pubDate>
		<dc:creator>tmintner</dc:creator>
				<category><![CDATA[System Center Configuration Manager]]></category>
		<category><![CDATA[USMT]]></category>
		<category><![CDATA[Windows 7]]></category>
		<category><![CDATA[MDT]]></category>
		<category><![CDATA[SCCM]]></category>
		<category><![CDATA[XML]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/2009/11/25/missing-xml-files-when-using-usmt-and-configmgr-sp2/</guid>
		<description><![CDATA[So you just upgraded all of your ConfigMgr 2007 Site Servers to Sp2 and you think you are all ready to deploy Windows 7.&#160; You integrate the latest MDT 2010 integration pieces and walk through the wizard to create your task sequence and create your new USMT 4.0 package.&#160; You then decide to deploy Windows [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=235&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>So you just upgraded all of your ConfigMgr 2007 Site Servers to Sp2 and you think you are all ready to deploy Windows 7.&#160; You integrate the latest MDT 2010 integration pieces and walk through the wizard to create your task sequence and create your new USMT 4.0 package.&#160; You then decide to deploy Windows 7 to one of your existing Windows XP clients and it should migrate all of the user data and install the new OS…right?&#160; Well after the installation starts it quickly finishes and doesn’t install Windows 7.&#160; After looking through the smsts.log file, you will notice that the task sequence failed on the Capture User State Step with an error message that it cannot find miguser.xml.&#160; Closer examination shows that it is looking for the XML file at the root of the package.&#160; Looking at the contents of the USMT package, you will notice that the XML files are in the X86 folder or X64 folder.&#160; Easy enough to fix, those MDT guys must have pointed the package to the wrong directory.&#160; So you modify the package to point to the X86 folder and try it again.&#160; Does it work?&#160; NO!!&#160; This time it fails because it cannot find scanstate.exe.&#160; So what in the world is wrong?</p>
<p>Configuration Manager SP2 updates all of the executables that ConfigMgr uses for an OS Deployment.&#160; One of the files that is used during a USMT migration is called OSDMigrateUserState.exe.&#160; During an OS Deployment this file will be in one of two places.&#160; For a New Computer deployment the file will be on Windows PE.&#160; If you are doing a Refresh from an existing operating system the file will reside in the client’s local CCM directory.&#160; If you just upgraded your site servers to SP2 the client machines won’t have the upgrade OSDMigrateUserState executable.&#160; Prior to SP2, that executable had no knowledge of USMT 4 and the directory structure change of USMT.&#160; So if you want to use USMT 4 in your ConfigMgr deployments you are going to need to upgrade all of your clients to ConfigMgr Sp2 as well!</p>
<p>This is just one example where mismatched SP1 and SP2 versions on your client machines will cause issues with Windows 7 deployments.&#160; As a best practice always make sure you have SP2 fully deployed to all of your site systems AND all of your client computers before starting a Windows 7 deployment.</p>
<p>&#160;</p>
<p>-Tim Mintner</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/235/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/235/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/235/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/235/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/235/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/235/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/235/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/235/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/235/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/235/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/235/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/235/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/235/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/235/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=235&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/11/25/missing-xml-files-when-using-usmt-and-configmgr-sp2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/240858a50784c41cedfbc35048e21064?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">tmintner</media:title>
		</media:content>
	</item>
		<item>
		<title>Understanding the MDT Configuration Database Part 1</title>
		<link>http://deployment.xtremeconsulting.com/2009/11/24/understanding-the-mdt-configuration-database-part-1/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/11/24/understanding-the-mdt-configuration-database-part-1/#comments</comments>
		<pubDate>Tue, 24 Nov 2009 23:11:23 +0000</pubDate>
		<dc:creator>tmintner</dc:creator>
				<category><![CDATA[Database]]></category>
		<category><![CDATA[MDT 2010]]></category>
		<category><![CDATA[System Center Configuration Manager]]></category>
		<category><![CDATA[MDT]]></category>
		<category><![CDATA[SCCM]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/2009/11/24/understanding-the-mdt-configuration-database-part-1/</guid>
		<description><![CDATA[The MDT Configuration Database has been around since MDT was called Business Desktop Deployment (BDD).  Since that time there have been numerous blog posts and articles on how to customize the database, extend the database, or use the database in specific ways to solve specific problems.  With all of those articles there doesn’t seem to [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=234&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>The MDT Configuration Database has been around since MDT was called Business Desktop Deployment (BDD).  Since that time there have been numerous blog posts and articles on how to customize the database, extend the database, or use the database in specific ways to solve specific problems.  With all of those articles there doesn’t seem to be a single article that explains what the database is or why you would even want to use it.  The MDT documentation even jumps right in and shows you all of the steps that you would do to configure the database and use it to do specific scenarios but the documentation doesn’t cover the basics of what it is or why use it?  This is a first in series of blog posts that I will be writing to cover the details of the MDT Configuration Database.  In this post, I will cover the basics of the database, why you would want to use it, some of the items that you can configure in the database, and how you will initially get the database installed.</p>
<h1>Dynamic Deployment</h1>
<p>The entire purpose of the MDT Configuration Database is make your deployments dynamic.  Now dynamic means many different things to many different people so lets define that a bit.  MDT’s goal is to reduce administrative overhead as much as possible.  There has been a lot of advancements in the past few years to allow you to reduce the number of images in your environment in many cases down to two images, one for X86 and one for X64, for your client and server operating systems.  Reducing the number of images of just one aspect to reducing the overall administrative overhead with a deployment.  With both MDT Lite Touch and System Center Configuration Manager OSD, the number of task sequences in many environments have expanded or the number of steps in the task sequence have increased as administrators add conditional statements in the task sequence for installing specific applications or installing drivers.  The MDT Configuration Database is meant to not only reduce the number of images but allow you to use a single task sequence and have that task sequence change dynamically during the deployment based on information retrieved from the database.</p>
<h1>Understanding MDT Variables</h1>
<p>Before we delve too deeply into the details of the database, we first need to understand how variables work inside of MDT.  Everything that is configured inside of the task sequence in MDT matches a variable that can be configured with a value.  Let’s take a look at the Validate step in the task sequence:</p>
<p><a href="http://tmintner.files.wordpress.com/2009/11/validate.png"><img style="display:inline;border:0;" title="Validate" src="http://tmintner.files.wordpress.com/2009/11/validate_thumb.png?w=244&h=218" border="0" alt="Validate" width="244" height="218" /></a></p>
<p>In this step you can see that you can configure the minimum memory, minimum processor speed, the minimum hard drive space required, and whether or not to deploy the image based on if the existing system is running a Client or Server Operating System.  Each one of these configuration items can be configured as variables.  Respectively for these items the variables are:</p>
<ul>
<li>ImageMemory</li>
<li>ImageProcessorSpeed</li>
<li>ImageSize</li>
<li>VerifyOS</li>
</ul>
<p>So how was I able to determine which variable to use?  The MDT documentation does good job of listing all of the variables that can be set as well as limited descriptions of each of the variables.  However if you just want to get a quick list of a specific step in the task sequence you can open up your configured task sequence XML file and look at that specific step.  For example the validate step looks like the following in the XML file:</p>
<p>&lt;step type=&#8221;BDD_Validate&#8221; name=&#8221;Validate&#8221; successCodeList=&#8221;0 3010&#8243; description=&#8221;" startIn=&#8221;" disable=&#8221;false&#8221; continueOnError=&#8221;false&#8221;&gt;<br />
  &lt;defaultVarList&gt;<br />
    &lt;variable name=&#8221;ImageSize&#8221; property=&#8221;ImageSize&#8221;&gt;0&lt;/variable&gt;<br />
    &lt;variable name=&#8221;ImageProcessorSpeed&#8221; property=&#8221;ImageProcessorSpeed&#8221;&gt;800&lt;/variable&gt;<br />
    &lt;variable name=&#8221;ImageMemory&#8221; property=&#8221;ImageMemory&#8221;&gt;512&lt;/variable&gt;<br />
    &lt;variable name=&#8221;VerifyOS&#8221; property=&#8221;VerifyOS&#8221;&gt;CLIENT&lt;/variable&gt;<br />
  &lt;/defaultVarList&gt;<br />
  &lt;action&gt;cscript.exe &#8220;%SCRIPTROOT%\ZTIValidate.wsf&#8221;&lt;/action&gt;<br />
&lt;/step&gt;</p>
<p>Here you can see in the XML file all of the variables that are associated with the Validate Step.</p>
<p>So now that you have the variables how would you use them?  One possible way of using the variables would be to set them in the customsettings.ini file.  This is configured by going to the <strong>Rules</strong> tab in the properties of the Deployment Share or you can just edit the file using notepad by going to the Control directory in the DeploymentShare.</p>
<p>Let’s say that you wanted to set the minimum memory to 1 GB instead of 512 MB.  To do that you could edit the task sequence or you could add the following line to the customettings.ini file:</p>
<p>Properties = ImageMemory</p>
<p>ImageMemory = 1024</p>
<p>“<strong>Note</strong> – to see a full list of variables that MDT can configure open up the ztigather.xml file in the DeploymentShare\Scripts folder.  In this case <strong>ImageMemory</strong> is not defined in ztigather.xml so you can add it by adding <strong>ImageMemory</strong> to the Properties line in the customsettings.ini”</p>
<p>Now when the validate step runs it will use the value specified in the customsettings.ini instead of the value in the task sequence.  In most cases the first value for a variable that gets set will take precedence over any other value. </p>
<p>&nbsp;</p>
<p>Adding variables directly to the customsettings.ini is a good start to doing dynamic deployments but if you add in all of the variables you need for every scenario directly into the customsettings.ini you will quickly replace the administrative overhead of managing a huge task sequence with lots of conditional steps with the administrative overhead of managing a huge customsettings.ini file.  You also now have to worry about replicating the customsettings.ini out to many different sites, locations, or USB drives.  To simplify both the management of the task sequence and the customsettings.ini file you should use the MDT Configuration Database to store your variables.  So lets now look at how to set up the database.</p>
<h1>Creating the MDT Configuration Database</h1>
<p>To create the database you need to navigate to the Database node under the Advanced Configuration node in the Deployment Workbench.  Note if you are using ConfigMgr 2007 you will still need to create and manage the database using the Deployment Workbench.  MDT can use any Microsoft SQL Server from SQL Server 2000 – SQL Server 2008 including SQL Server Express.  To create the database right click on the Database and choose New Database.  You will be prompted for the following:</p>
<ul>
<li>SQL Server Name – name of your SQL server</li>
<li>Instance – only needed if you installed SQL without using the default instance or you are using SQL Server Express</li>
<li>Port – only needed if you are using TCP/IP sockets (not recommended)</li>
<li>Network Library – Named Pipes or TCP/IP sockets</li>
</ul>
<p>Let’s talk a little bit about the Network Library.  It is HIGHLY recommended that you use Named Pipes over TCP/IP sockets.  Unfortunately Windows PE does not have the ability to use integrated security with TCP/IP sockets.  That is if you want to use an Active Directory or Windows username and password to connect to the database you must be using Named Pipes.  If you use TCP/IP sockets you would need a SQL user account and password. </p>
<p>The next item you will need to provide is the SQL Share.  That is a share that MDT uses to authenticate to the server so that integrated security can be used.  The share does not need to contain anything, it just needs to exist on the SQL Server. </p>
<p>Now that you have created your database by completing the wizard.  You need to configure the CustomSettings.ini to use the database.  To do so again right click on the Database node and choose Configure Database Rules.  This will start another wizard. For right now just click on <strong>Next</strong> until you have completed the wizard and your customsettings.ini file will be fully configured to query the database during your deployment. Note if you are using ConfigMgr 2007 with MDT integration, you will need to take the customsettings.ini and place it in your settings package.</p>
<h1>Add items to the Database</h1>
<p>So now that you have created the database and configured the customsettings.ini to query the database.  Expand the Database node and you should see a screen like the following:</p>
<p><a href="http://tmintner.files.wordpress.com/2009/11/database.png"><img style="display:inline;border:0;" title="database" src="http://tmintner.files.wordpress.com/2009/11/database_thumb.png?w=244&h=184" border="0" alt="database" width="244" height="184" /></a></p>
<p>MDT allows you to configure settings based on the following:</p>
<ul>
<li>Computers – identified by MacAddress, UUID, or Serial Number</li>
<li>Roles – arbitrary grouping computers (Accounting, Finance, IT, etc.)</li>
<li>Locations – defined by default gateways</li>
<li>Make and Model – Computer manufacturer and model specific settings</li>
</ul>
<p>So lets configure a setting in the database that states for all Dell Latitude E5500 computers the Display Resolution should be 1440 X 900.  To do that we would add an entry under Make and Model.  Right click on Make and Model and choose New.  Enter the following:</p>
<ul>
<li>Make – Dell Inc.</li>
<li>Model – Latitude E5500</li>
</ul>
<p>Click on the Details Pane and you should see a screen like the following:</p>
<p><a href="http://tmintner.files.wordpress.com/2009/11/displaysettings.png"><img style="display:inline;border:0;" title="displaysettings" src="http://tmintner.files.wordpress.com/2009/11/displaysettings_thumb.png?w=244&h=184" border="0" alt="displaysettings" width="244" height="184" /></a></p>
<p>Find Xresolution and set the value to 1440.  Also set the Yresolution to 900.  By clicking on Apply the values will be set and now when the deployment occurs all Dell Latitude E5500 laptops will automatically get the display resolution set.  There is nothing to configure in the task sequence or in the customsettings.ini because we already configured the customsettings.ini to query the database earlier.</p>
<p>This is a very simple example of one particular setting.  In future posts I will cover more scenarios such as Make and Model application selection, driver selection and Location, Role, and computer specific settings.</p>
<h1>Updating your Boot Image</h1>
<p>The only thing left for you to do is verify that your boot image contains ADO (Active-X Data Objects).  ADO is needed to query a database.  In Lite Touch, ADO is configured by default.  To verify this go to the properties of your Deployment Share and click on either Windows PE X86 Components or Windows PE x64 Components and verify that ADO is selected under Feature Packs.  If it is not, select it and Update your Deployment Share.</p>
<p>For ConfigMgr you will need to create a custom boot image using the MDT provided wizard.  Right click on Boot Images and choose Create Boot Image using Microsoft Deployment and walk through the wizard making sure you choose ADO under Feature Packs.</p>
<h1>Summary</h1>
<p>This post just explained the very basics of why you would want to use the database and how you can set your database up very quickly.  There is a lot more that the MDT Configuration Database can provide and automate to make your deployments truly dynamic.  Make sure you check back for more posts in the future on some intermediate and advanced posts on the MDT Database.</p>
<p>&nbsp;</p>
<p>-Tim Mintner</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/234/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/234/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/234/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/234/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/234/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/234/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/234/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/234/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/234/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/234/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/234/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/234/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/234/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/234/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=234&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/11/24/understanding-the-mdt-configuration-database-part-1/feed/</wfw:commentRss>
		<slash:comments>17</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/240858a50784c41cedfbc35048e21064?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">tmintner</media:title>
		</media:content>

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

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

		<media:content url="http://tmintner.files.wordpress.com/2009/11/displaysettings_thumb.png" medium="image">
			<media:title type="html">displaysettings</media:title>
		</media:content>
	</item>
		<item>
		<title>Understanding USMT with MDT 2010</title>
		<link>http://deployment.xtremeconsulting.com/2009/11/20/understanding-usmt-with-mdt-2010/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/11/20/understanding-usmt-with-mdt-2010/#comments</comments>
		<pubDate>Fri, 20 Nov 2009 22:27:30 +0000</pubDate>
		<dc:creator>tmintner</dc:creator>
				<category><![CDATA[MDT 2010]]></category>
		<category><![CDATA[USMT]]></category>
		<category><![CDATA[Windows 7]]></category>
		<category><![CDATA[ConfigMgr]]></category>
		<category><![CDATA[hard link]]></category>
		<category><![CDATA[SCCM]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/2009/11/20/understanding-usmt-with-mdt-2010/</guid>
		<description><![CDATA[The User State Migration Tool (USMT) is an extremely powerful and essential piece of an Operating System Deployment.&#160; With the release of the Windows AIK for Windows 7, USMT 4.0 was made available and includes many great new features such as hard-link migration (for more information on what’s new in USMT 4.0 see this article).&#160; [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=227&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>The User State Migration Tool (USMT) is an extremely powerful and essential piece of an Operating System Deployment.&#160; With the release of the Windows AIK for Windows 7, USMT 4.0 was made available and includes many great new features such as hard-link migration (for more information on what’s new in USMT 4.0 see this <a href="http://technet.microsoft.com/en-us/library/dd560752(WS.10).aspx">article</a>).&#160; MDT 2010 integrates USMT directly into the task sequence for both Lite Touch Installations and Zero Touch Installations.&#160; There have been several questions since MDT 2010 was released on how USMT works with MDT and how all of the pieces fit together.&#160; </p>
<p>&#160;</p>
<h1>Lite Touch Installation</h1>
<h2>USMT 4.0</h2>
<p>In order to user MDT 2010, you must install the Windows AIK for Windows 7.&#160; The Windows AIK now includes USMT 4.0 as a feature of the AIK so there is no longer a separate download required for USMT.&#160; When you create your Deployment Share inside of the Deployment Workbench, MDT will create a folder at the root of the deployment share called USMT and copy the USMT files into that folder.&#160; </p>
<p>&#160;</p>
<h2></h2>
<h3>Refresh Scenario</h3>
<p>A refresh scenario means that you are deploying an Operating System to a computer that already has an existing Operating System using a task sequence created with the Standard Client Task Sequence.&#160; The process is started from within the current Operating System.&#160; In a Refresh scenario, the disk is not formatted or partitioned so in most cases, the user data can be saved locally on disk saving time and network bandwidth.&#160; During a Lite Touch Installation there are only two steps in the task sequence step that uses USMT.&#160; The first step is called <strong>Capture User State </strong>and the second step is called <strong>Restore User State</strong>.&#160; This step will run a script called ztiuserstate.wsf.&#160; The actions that ztiuserstate will be performed are determined by the following factors:</p>
<ul>
<li>The Operating System being deployed</li>
<li>The values provided in CustomSettings.ini for UserDataLocation and UDDIR and UDShare</li>
<li>The values provided in the Client Deployment Wizard used to start the Task Sequence</li>
</ul>
<p>If ZTIUserState determines that you are deploying Windows XP it will not be able to use USMT 4.0 and will try to use USMT 3 for the user state migration (more on that later).&#160; If you have specified that <strong>UserDataLocation = Network</strong> and you have also specified a UDDIR and UDShare in the customsettings.ini then USMT will migrate all of the files to a compressed file at the network location you specify.&#160; Also if you provide a network location in the Client Deployment Wizard, USMT will migrate the user data to a compressed file at the network location you specify.&#160; If <strong>UserDataLocation = AUTO </strong>and you are not deploying Windows XP, the ztiuserstate script will keep the data local in the MININT folder using hard-link migration.&#160; There is no need to do an estimate because the hard-link migration process only requires 250 MB of space on the disk and if you didn’t have that much the process would fail in the validate step.</p>
<h3>Replace Scenario</h3>
<p>A Replace scenario is made up of two task sequences.&#160; The first task sequence is based upon the Standard Client Replace template and the second task sequence is based on the Standard Client task sequence template.&#160; The first task sequence is initiated from within the existing Operating System like in a Refresh scenario.&#160; The USMT capture process in a Replace scenario works just like a Refresh scenario with one exception, in a Replace scenario the user data can not be stored locally so you must provide a network location to store the User Data.</p>
<p>The second task sequence is started by booting into the Lite Touch boot image and doing a New Computer deployment.&#160; The Client Deployment Wizard will ask if you want to restore user state and where the user state is stored.&#160; The <strong>Restore User State</strong> step in the task sequence would then use USMT to restore the user state to the computer being deployed.</p>
<h2>&#160;</h2>
<h2>USMT 3.01</h2>
<p>So if USMT 4 has all these new cool features, why would you ever still want to use USMT 3?&#160; Well USMT 4.0 cannot restore user data onto Windows XP.&#160; Loadstate.exe from USMT 4.0 will not run on Windows XP.&#160; So if you plan on migrating user data to Windows XP you will still need to use USMT 3.01.&#160; To use USMT 3.01 you will need to download it from Microsoft.&#160; The Deployment Workbench has direct links to both the 32 bit and 64 bit versions of USMT 3.01 in the Components section.&#160; After downloading the installation files you will need to place those installations files in the Tools\X86 folder in your Deployment Share for 32 bit installs and Tools\X64 for 64 bit installs.</p>
<h3><strong>Refresh Scenario</strong></h3>
<p>In a Refresh scenario,the Lite Touch Installation process will be able to determine if the Operating System being deployed is Windows XP.&#160; The same factors mentioned above are applicable for USMT 3.01.&#160; If the Operating System is Windows XP, the ztiuserstate script will install USMT 3.01 on the computer and then do an estimate to determine how much user data is on the computer.&#160; If the amount of user data is less than the amount of disk space needed then ztiuserstate will store the user data on the local disk in the MININT folder.&#160; If there is not enough space then the user data will be stored in the UDSHARE and UDDIR locations.</p>
<h3><strong>Replace Scenario</strong></h3>
<p>A Replace scenario is a little trickier.&#160; The Lite Touch Installation process won’t be able to automatically determine what Operating System you are going to be deploying because the Operating System is going to be deployed with a separate task sequence potentially even on a different computer.&#160; In a Replace scenario ztiuserstate will use USMT 4.0 by default, however there is one problem with that.&#160; User Data backed up with USMT 4 cannot be restored with USMT 3 and USMT 4 cannot be run on Windows XP!&#160; So if you are replacing a Windows XP computer with another Windows XP computer, how can you make sure that USMT 3.01 is used?&#160; To handle that scenario, MDT has a variable called USMT3.&#160; To force the Replace scenario to use USMT 3 you would enter the following into your customsettings.ini:</p>
<p><strong>USMT3 = YES</strong></p>
<p>&#160;</p>
<h1>Zero Touch Installation (ConfigMgr/SCCM)</h1>
<p>The USMT process with ZTI is slightly different than the process with Lite Touch.&#160; The steps in a ZTI task sequence look like the following for capturing User State:</p>
<p><a href="http://tmintner.files.wordpress.com/2009/11/image7.png"><img style="border-bottom:0;border-left:0;display:inline;border-top:0;border-right:0;" title="image" border="0" alt="image" src="http://tmintner.files.wordpress.com/2009/11/image_thumb7.png?w=244&h=60" width="244" height="60" /></a> </p>
<p>The MDT integrated task sequence uses the built in actions for Request State Store, Capture User State, Release State Store, and Restore User State.&#160; The Ztiuserstate.wsf script is only used in one step: Determine Local or Remote User State.&#160; </p>
<p>With ZTI, the version of USMT that is used is solely dependent on the USMT package that is associated with the Determine Local or Remote User State, Capture User State, and Restore User State steps in the task sequence.&#160; You will need to create a package that contains the files for either USMT 3.01 or USMT 4.0.&#160; Thankfully when you walk through the wizard to create the MDT task sequence in Configuration Manager, the MDT provided wizard will create the USMT 4.0 package for you automatically.&#160; If you want to create a USMT 3.01 package you will need to download and install USMT 3.01 on a client computer and use the installation folder in the Program Files folder as the source directory for your package.</p>
<h2></h2>
<h2>USMT 4.0</h2>
<p>The version of USMT that you are using for your USMT package will determine what actions the Determine Local or Remote User State will perform.&#160; If you are using USMT 4.0 then the Determine Local or Remote User State will set the variable needed to do a hard-link migration and also set a variable called USMTLOCAL =TRUE.&#160; The Request State Store and Release State Store steps in the task sequence have a condition on them so that they will only run if USMTLOCAL is not true.&#160; That means if you are using USMT 4, the user state will always be local and the State Migration Point will never be used.&#160; If you would like to use the State Migration Point instead of using hard-link migration then just disable the Determine Local or Remote UserState step in the task sequence</p>
<h2></h2>
<h2>USMT 3.01</h2>
<p>If you are using USMT 3.01 then the Determine Local or Remote User State step will perform a USMT Estimate to determine if there is enough space locally on the disk to store the user data.&#160; If there is enough space locally the variable USMTLOCAL is set to TRUE.&#160; Again the Request and Release State Store steps are conditional on this variable so if there is not enough room locally the State Migration Point will be used</p>
<p>&#160;</p>
<h1>Summary</h1>
<p>Whew..that is a lot of information.&#160; As you can see, MDT tries to cover all of the scenarios with USMT whether you are using USMT 4.0 or still deploying Windows XP and need USMT 3.01.&#160; Enjoy and happy deploying!</p>
<p>&#160;</p>
<p>-Tim Mintner</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/227/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/227/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/227/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/227/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/227/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/227/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/227/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/227/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/227/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/227/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/227/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/227/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/227/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/227/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=227&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/11/20/understanding-usmt-with-mdt-2010/feed/</wfw:commentRss>
		<slash:comments>21</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/240858a50784c41cedfbc35048e21064?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">tmintner</media:title>
		</media:content>

		<media:content url="http://tmintner.files.wordpress.com/2009/11/image_thumb7.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>
	</item>
		<item>
		<title>Identify Driver Problems in MDT 2010 Litetouch (new tool)</title>
		<link>http://deployment.xtremeconsulting.com/2009/11/19/identify-driver-problems-in-mdt-2010-litetouch-new-tool/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/11/19/identify-driver-problems-in-mdt-2010-litetouch-new-tool/#comments</comments>
		<pubDate>Thu, 19 Nov 2009 18:00:26 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[MDT 2010]]></category>
		<category><![CDATA[VBscript]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/?p=207</guid>
		<description><![CDATA[This tool is in response to a common question: In my MDT 2010 Litetouch environment, how do I identify which hardware devices are not being installed with the correct drivers? Introducing the “Yellow Bang” tool! Yellow bang is a slang term used to describe drivers that have “problems” represented by a Yellow exclamation point ( [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=207&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>This tool is in response to a common question:</p>
<blockquote><p>In my MDT 2010 Litetouch environment, how do I identify which hardware devices are not being installed with the correct drivers?</p></blockquote>
<p>Introducing the “Yellow Bang” tool!</p>
<p>Yellow bang is a slang term used to describe drivers that have “problems” represented by a Yellow exclamation point ( ! ) in the Windows Device Manager:</p>
<p><a href="http://tmintner.files.wordpress.com/2009/11/image3.png"><img style="display:inline;border-width:0;" title="image" src="http://tmintner.files.wordpress.com/2009/11/image_thumb3.png?w=442&h=152" border="0" alt="image" width="442" height="152" /></a></p>
<p>Now typically, most IT professionals will be using SCCM, that can gather from each machine in the environment, and query computer status in a more structured way. This solution is only designed for IT departments that are using Litetouch only.</p>
<h3>New Tool</h3>
<p>Use this tool in MDT 2010 to identify all drivers that have problems on a client machine running MDT Litetouch. These are the drivers that have a Yellow Exclamation point (Bang) in the Windows Device Manager. Simply add this script to your …\scripts\ directory, and add the script to your task sequence.</p>
<p>For each driver that is not working properly the details are written to the bdd.log and the ZTIYellowBang.log file for later review.</p>
<h3><strong>Example Output</strong></h3>
<p>For this example, I have a HP Laptop that is missing a driver for the ACPI\HPQ0004 device, which is the “HP 3D DriveGuard”. &lt;meh&gt;</p>
<pre>Microsoft Deployment Toolkit version: 5.0.1641.0
SUCCESS: 0: Create object: Set oScriptClass = New ZTIYellowBang  DRIVER_ERROR [28: Device drivers are not installed.]
DeviceID [ACPI\HPQ0004\3&amp;33FD14CA&amp;0]
HardwareID [ACPI\HPQ0004]
HardwareID [*HPQ0004]
CompatibleID []
ZTIYellowBang processing completed successfully.</pre>
<h3><strong>Steps</strong></h3>
<p>Simply copy the ZTIYellowBang.wsf script to the Deployment Share under the &#8230;\scripts\ directory. Then add the ZTIYellowBang.wsf script as a Step to your Task Sequence:</p>
<pre>Cscript.exe “%ScriptRoot%\ZTIYellowBang.wsf</pre>
<h3>Links</h3>
<p><a href="http://cid-5407b03614346a99.office.live.com/self.aspx/Blog/ZTIYellowBang.zip">http://cid-5407b03614346a99.office.live.com/self.aspx/Blog/ZTIYellowBang.zip</a></p>
<p>Keith</p>
<address><a href="http://keithga.com"><span style="color:#993300;">Keith Garner</span></a><span style="color:#993300;"> is a Deployment Specialist with </span><a href="http://deployment.xtremeconsulting.com/"><span style="color:#993300;">Xtreme Consulting Group</span></a></address>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/207/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/207/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/207/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/207/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/207/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/207/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/207/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/207/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/207/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/207/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/207/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/207/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/207/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/207/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=207&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/11/19/identify-driver-problems-in-mdt-2010-litetouch-new-tool/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>

		<media:content url="http://tmintner.files.wordpress.com/2009/11/image_thumb3.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>
	</item>
		<item>
		<title>Installing Office 2010 Beta with MDT 2010</title>
		<link>http://deployment.xtremeconsulting.com/2009/11/18/installing-office-2010-beta-with-mdt-2010/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/11/18/installing-office-2010-beta-with-mdt-2010/#comments</comments>
		<pubDate>Wed, 18 Nov 2009 21:30:12 +0000</pubDate>
		<dc:creator>tmintner</dc:creator>
				<category><![CDATA[MDT 2010]]></category>
		<category><![CDATA[Office 2010]]></category>
		<category><![CDATA[Applications]]></category>
		<category><![CDATA[MDT]]></category>
		<category><![CDATA[Office Customization]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/2009/11/18/installing-office-2010-beta-with-mdt-2010/</guid>
		<description><![CDATA[The Office 2010 Beta went public late last night so you might be wondering how to deploy it with MDT 2010.&#160; To do so you first need to extract the files from Microsoft with the command: ProfessionalPlus.exe /extract:c:\extractedfolder &#160; Now that you have extracted the files you can import Office 2010 directly into MDT 2010 [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=224&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>The Office 2010 Beta went public late last night so you might be wondering how to deploy it with MDT 2010.&#160; To do so you first need to extract the files from Microsoft with the command:</p>
<p>ProfessionalPlus.exe /extract:c:\extractedfolder</p>
<p>&#160;</p>
<p>Now that you have extracted the files you can import Office 2010 directly into MDT 2010 as an application.&#160; Go to the Applications node and choose a New Application, choose Application with Source Files and click on <strong>Next</strong>.&#160; Enter in the Application Name information and click on <strong>Next.&#160; </strong>For the source files choose the extracted folder you created earlier and click on <strong>Next</strong>.&#160; Enter a name for the folder and click on <strong>Next</strong>.&#160; For the command line just enter <strong>setup.exe </strong>and click on<strong> Next.</strong>&#160; Click on <strong>Next</strong> on the summary screen and the Application will be created.</p>
<p>Now that you have Office 2010 imported as an application you can now go to the Properties of the Application you Created and you should see a new tab that looks like the following:</p>
<p><a href="http://tmintner.files.wordpress.com/2009/11/image5.png"><img style="border-bottom:0;border-left:0;display:inline;border-top:0;border-right:0;" title="image" border="0" alt="image" src="http://tmintner.files.wordpress.com/2009/11/image_thumb5.png?w=244&h=202" width="244" height="202" /></a> </p>
<p>If you want to customize the installation you can choose to use the Office Customization Tool.&#160; For example to set the product key for the installation you would navigate to Licensing and User Interface as shown below:</p>
<p><a href="http://tmintner.files.wordpress.com/2009/11/image6.png"><img style="border-bottom:0;border-left:0;display:inline;border-top:0;border-right:0;" title="image" border="0" alt="image" src="http://tmintner.files.wordpress.com/2009/11/image_thumb6.png?w=244&h=142" width="244" height="142" /></a> </p>
<p>Just enter your product key and go to <strong>File, Save</strong> to save your changes.</p>
<p>Now you are ready to install Office 2010!</p>
<p>&#160;</p>
<p>- Tim Mintner</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/224/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/224/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/224/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/224/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/224/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/224/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/224/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/224/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/224/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/224/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/224/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/224/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/224/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/224/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=224&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/11/18/installing-office-2010-beta-with-mdt-2010/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/240858a50784c41cedfbc35048e21064?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">tmintner</media:title>
		</media:content>

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

		<media:content url="http://tmintner.files.wordpress.com/2009/11/image_thumb6.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>
	</item>
		<item>
		<title>How to add users to &#8220;Remote Desktop Users&#8221; Group</title>
		<link>http://deployment.xtremeconsulting.com/2009/11/18/how-to-add-users-to-remote-desktop-users-group/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/11/18/how-to-add-users-to-remote-desktop-users-group/#comments</comments>
		<pubDate>Wed, 18 Nov 2009 18:00:19 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[MDT 2010]]></category>
		<category><![CDATA[VBscript]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/?p=204</guid>
		<description><![CDATA[Someone posted a question recently that I thought was intresting: What is the correct way to use ZTIGroups.wsf, the Restore Groups MDT action, to populate local group membership of groups that have a space in the name?  As a test I’m trying to use CustomSettings.ini to add domain users/groups to the local Remote Desktop Users [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=204&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Someone posted a question recently that I thought was intresting:</p>
<blockquote><p>What is the correct way to use ZTIGroups.wsf, the Restore Groups MDT action, to populate local group membership of groups that have a space in the name?  As a test I’m trying to use CustomSettings.ini to add domain users/groups to the local Remote Desktop Users group.  I didn’t find a lot of detail in the MDT docs on doing anything other than Administrators or Power Users. </p></blockquote>
<p>I had done some work in ZTIGroups.wsf earlier this year. We added the ability to save the list of group names, and create the groups dynamically during restore time, in addition to the ability to add members to the group.</p>
<p>I had done testing with ZTIGroups.wsf, however I didn’t recall testing with the group “Remote Desktop Users” group. How did that work?</p>
<p>I tried running a command:</p>
<pre>C:\&gt;cscript ZTIGroups.wsf   /Groups1:"Remote Desktop Users"   "/Remote Desktop Users1:pickett\keith.garner"   /restore /Debug:True /DebugCapture</pre>
<p>While looking at the output I noticed that the script was looking for a new property: “RemoteDesktopUsers”, where did that come from?</p>
<p>It turns out that the ZTIGroups.wsf script will look for members using the properly name derived from the name of the group being populated, *without* the spaces in the property name.</p>
<p>So running a deployment with the following properties in the customsettings.ini worked:</p>
<pre>Groups001=Remote Desktop Users  RemoteDesktopUsers001=pickett\Keith.Garner</pre>
<p>Keith</p>
<address><a href="http://keithga.com"><span style="color:#993300;">Keith Garner</span></a><span style="color:#993300;"> is a Deployment Specialist with </span><a href="http://deployment.xtremeconsulting.com/"><span style="color:#993300;">Xtreme Consulting Group</span></a></address>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/204/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/204/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/204/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/204/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/204/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/204/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/204/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/204/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/204/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/204/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/204/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/204/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/204/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/204/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=204&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/11/18/how-to-add-users-to-remote-desktop-users-group/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>
	</item>
		<item>
		<title>How to Know You are Using Scripts from MDT 2010</title>
		<link>http://deployment.xtremeconsulting.com/2009/11/17/how-to-know-you-are-using-scripts-from-mdt-2010/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/11/17/how-to-know-you-are-using-scripts-from-mdt-2010/#comments</comments>
		<pubDate>Tue, 17 Nov 2009 19:59:48 +0000</pubDate>
		<dc:creator>tmintner</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/2009/11/17/how-to-know-you-are-using-scripts-from-mdt-2010/</guid>
		<description><![CDATA[We’ve had a few emails over the last few weeks where certain variables or actions in the task sequence in MDT 2010 were either not functioning at all or were not behaving as expected.&#160; After looking at the log files, it was pretty clear that a mixture of MDT 2008 boot images were being used [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=216&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>We’ve had a few emails over the last few weeks where certain variables or actions in the task sequence in MDT 2010 were either not functioning at all or were not behaving as expected.&#160; After looking at the log files, it was pretty clear that a mixture of MDT 2008 boot images were being used with MDT 2010.&#160; So how can you tell if you are using a MDT 2010 boot image?&#160; The easiest way to tell is to look in the bdd.log file.&#160; IN MDT 2010 we added a version line to each of the scripts that are run so if in the first 15 or so lines of the BDD.LOG you do not see this: Microsoft Deployment Toolkit version: 5.0.1641.0 , then your boot images are probably running scripts from MDT 2008.</p>
<p>&#160;</p>
<p>To fix this you would, right click on the DeploymentShare and choose Update.&#160; Then you would choose Completely regenerate the boot images as shown below:</p>
<p><a href="http://tmintner.files.wordpress.com/2009/11/image4.png"><img style="border-bottom:0;border-left:0;display:inline;border-top:0;border-right:0;" title="image" border="0" alt="image" src="http://tmintner.files.wordpress.com/2009/11/image_thumb4.png?w=244&h=202" width="244" height="202" /></a> </p>
<p>&#160;</p>
<p>Now that your boot images are updated you will either need to burn new CDs or re-import the boot images into WDS</p>
<p>&#160;</p>
<p>- Tim Mintner</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/216/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/216/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/216/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/216/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/216/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/216/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/216/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/216/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/216/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/216/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/216/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/216/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/216/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/216/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=216&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/11/17/how-to-know-you-are-using-scripts-from-mdt-2010/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/240858a50784c41cedfbc35048e21064?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">tmintner</media:title>
		</media:content>

		<media:content url="http://tmintner.files.wordpress.com/2009/11/image_thumb4.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>
	</item>
		<item>
		<title>Solving an Intermittent Format Problem</title>
		<link>http://deployment.xtremeconsulting.com/2009/11/17/solving-an-intermittent-format-problem/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/11/17/solving-an-intermittent-format-problem/#comments</comments>
		<pubDate>Tue, 17 Nov 2009 16:32:52 +0000</pubDate>
		<dc:creator>tmintner</dc:creator>
				<category><![CDATA[MDT 2010]]></category>
		<category><![CDATA[Troubleshooting]]></category>
		<category><![CDATA[Disks]]></category>
		<category><![CDATA[Format]]></category>
		<category><![CDATA[MDT]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/2009/11/17/solving-an-intermittent-format-problem/</guid>
		<description><![CDATA[I received and interesting email yesterday from someone who was performing Lite Touch deployments and it seemed that randomly his deployments would fail at the Format and Partition Disk step in the task sequence.  Examining his BDD.LOG showed this error: FAILURE ( 7705 ): command: FORMAT.COM C: /FS:NTFS /V:OSDisk /Y /Q   FAILED with error = [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=212&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I received and interesting email yesterday from someone who was performing Lite Touch deployments and it seemed that randomly his deployments would fail at the Format and Partition Disk step in the task sequence.  Examining his BDD.LOG showed this error:</p>
<p>FAILURE ( 7705 ): command: FORMAT.COM C: /FS:NTFS /V:OSDisk /Y /Q   FAILED with error = 4</p>
<p>The first step I had him do was reboot the computer and run through the steps that the script ztidiskpart runs manually.  Those steps are:</p>
<ol>
<li>Boot in Windows PE</li>
<li>Press F8</li>
<li>Run diskpart</li>
<li>select disk 0</li>
<li>clean</li>
<li>create partition primary</li>
<li>assign letter=c:</li>
<li>active</li>
<li>exit</li>
<li>format c: /fs:ntfs /v:OSDisk /Y /Q</li>
</ol>
<p>Again the format command failed.  He then immediately tried the format again and it worked.  So this was truly an intermittent problem.  My suspicions went up that this was driver related and had him check what kind of storage controller is in the laptop and it was the lovely Intel Matrix Storage Driver.  I checked Intel’s web site and had him download the new driver from here: <a href="http://downloadcenter.intel.com/Detail_Desc.aspx?agr=Y&amp;DwnldID=17882&amp;lang=eng">http://downloadcenter.intel.com/Detail_Desc.aspx?agr=Y&amp;DwnldID=17882&amp;lang=eng</a> </p>
<p>After removing the old Intel Matrix Driver from his Deployment Workbench, adding this one back in, and regenerating his boot images it worked!</p>
<p>It was a great lesson for both of us and now hopefully you won’t have to go through as many steps.  If you ever run into any intermittent format or partitioning problems start investigating the storage driver!</p>
<p>- Tim Mintner</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/212/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/212/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/212/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/212/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/212/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/212/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/212/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/212/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/212/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/212/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/212/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/212/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/212/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/212/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=212&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/11/17/solving-an-intermittent-format-problem/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/240858a50784c41cedfbc35048e21064?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">tmintner</media:title>
		</media:content>
	</item>
		<item>
		<title>New Tool: MDT 2010 Build-out/Hydration Evaluation</title>
		<link>http://deployment.xtremeconsulting.com/2009/11/13/new-tool-mdt-2010-build-outhydration-evaluation/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/11/13/new-tool-mdt-2010-build-outhydration-evaluation/#comments</comments>
		<pubDate>Fri, 13 Nov 2009 18:05:28 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[MDT 2010]]></category>
		<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[VBscript]]></category>
		<category><![CDATA[Windows 7]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/?p=193</guid>
		<description><![CDATA[I wanted to give a glimpse of some projects we are working here at Xtreme Consulting Services – Deployment Team. This is a Microsoft Deployment Toolkit 2010 Build-out (sometimes called Hydration) system. It starts off as a small 3MB *.zip file. The MDTBuildout.exe program will automatically download all required files (around 10GB of files), create [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=193&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I wanted to give a glimpse of some projects we are working here at Xtreme Consulting Services – Deployment Team.</p>
<p>This is a Microsoft Deployment Toolkit 2010 Build-out (sometimes called Hydration) system.</p>
<p>It starts off as a small 3MB *.zip file. The MDTBuildout.exe program will automatically download all required files (around 10GB of files), create a Virtual Machine running Windows Server 2008, and build out a functional MDT 2010 system. All the files downloaded are publicly avaiable over the internet.</p>
<p>This sample is *not* designed for production environments. The Server OS and Windows 7 Client OS&#8217;es downloaded are time-limited Evaluation versions of Microsoft OS’es, and not intended for production environments. If you would like to setup a functional system for your corporate environment, please let us know.</p>
<p>Xtreme Consulting Service’s Deployment Team is ready to assist you with your deployment needs.</p>
<h3>Features</h3>
<p>When complete, this Buildout (Hydration) system will create:</p>
<ul>
<li>A Virtual Machine running Windows Server 2008 (R1) x86 Server Standard.</li>
<li>MDT 2010, with all dependencies installed (including WAIK).
<ul>
<li>OS&#8217;es: <strong><span style="text-decoration:underline;">Server 2008</span></strong> R1 x86, <strong><span style="text-decoration:underline;">Windows 7</span></strong> x86 and <strong><span style="text-decoration:underline;">Windows 7</span></strong> x64.</li>
<li>Microsoft <strong><span style="text-decoration:underline;">Office 2007 </span></strong>Enterprise Evaluataion Version.</li>
<li>Applications: <strong><span style="text-decoration:underline;">7-zip, Foxit PDF Reader, MacroMedia player, Silverlight player, SQL Server 2008 Express, Sun Java Runtime, Video Lan Player, Windows Debugger (windbg).</span></strong></li>
<li>Sample Driver package: Intel Chipset drivers.</li>
<li>Sample Packages: <strong><span style="text-decoration:underline;">Windows 7 Language Packs</span></strong>, <strong><span style="text-decoration:underline;">Hyper-V Drivers, Remote Server Administration Tools (RSAT) </span></strong></li>
</ul>
</li>
<li><strong><span style="text-decoration:underline;">A Windows 7 Media build DVD image with Office 2007</span></strong>.</li>
<li>It will also enable a <strong><span style="text-decoration:underline;">PXE/WDS Service </span></strong>for servicing MDT 2010 WinPE Images (<strong><span style="text-decoration:underline;">no Domain Controller required</span></strong>).</li>
<li>A blank Virtual Machine ready to perform a capture of Windows 7 back to the MDT 2010 server.</li>
</ul>
<h3>Requirements</h3>
<ul>
<li>Your machine must be running windows with a version of either Hyper-V (for Windows Server 2008) or Virtual PC 7 (for Windows 7).</li>
<li>Your machine must have at least 2GB of ram, and 60GB of free hard disk space.</li>
</ul>
<h3>Walkthrough</h3>
<p>Download the MDTBuildout.zip file to your local machine and expand the contents to their own folder. You should see the manual: MDTBuildout.rtf and the Wizard Wrapper MDTBuildout.exe. Go ahead and launch the MDTBuildout.exe.</p>
<p>The MDTBuildout.exe wizard will guide you through the process of creating the virtual machine and downloading the necessary files to get it started. The wizard will create to Virtual Machines:</p>
<p>MDTVirtualServer &#8211; This is the Virtual Server that will host MDT 2010. It takes a couple of hours to setup, depending on the speed of your network connection.</p>
<p><a href="http://tmintner.files.wordpress.com/2009/11/image.png"><img style="display:inline;border-width:0;" title="image" src="http://tmintner.files.wordpress.com/2009/11/image_thumb.png?w=244&h=195" border="0" alt="image" width="244" height="195" /></a></p>
<p>MDTVirtualClient &#8211; This Virtual Machine will be used later on to capture a reference image of Windows 7 with Office 2007.</p>
<p><a href="http://tmintner.files.wordpress.com/2009/11/image1.png"><img style="display:inline;border-width:0;" title="image" src="http://tmintner.files.wordpress.com/2009/11/image_thumb1.png?w=244&h=195" border="0" alt="image" width="244" height="195" /></a></p>
<p>It is recommended that you use the default settings during the MDTBuildout.exe wizard, although, you can override the settings if required. Be sure to give the Virtual Machines enough memory, place the *.VHD files on a disk with 40+GB of space free, and select the Virtual Networking adapter with internet access.</p>
<p>When you select &#8220;Build&#8221; the wizard will begin the process of downloading the Windows Server 2008 Eval *.iso file to the local machine, this file is about 1.8GB. When done, the wizard will automatically create the virtual machines with the required parameters, and start the process. You can continue to watch the progress in the VM window.</p>
<p>The entire build process can take several hours depending on the speed of your network connection. Let the install run. When complete, you should see a dialog showing the status.</p>
<p>The password for the MDT Server is: P@ssword</p>
<p>When complete, you can start the MDT 2010 Workbench (start &#8211;&gt; Microsoft Deployment Toolkit &#8211;&gt; Deployment Workbench), and view the components added to the system.</p>
<p><a href="http://tmintner.files.wordpress.com/2009/11/image2.png"><img style="display:inline;border-width:0;" title="image" src="http://tmintner.files.wordpress.com/2009/11/image_thumb2.png?w=244&h=205" border="0" alt="image" width="244" height="205" /></a></p>
<p>The deployment share should be at: c:\deploymentshare</p>
<p>The media share should be at: c:\media</p>
<p>If you wish, you can start the PXE server, to allow other computers on the network to boot into MDT 2010, this is a great way to upgrade machines on your corporate network in a &#8220;self-service&#8221; fashion. To enable the pxe server, run the command &#8220;net start wdsserver&#8221;. <span style="color:#ff0000;"><strong>WARNING</strong>: The PXE/WDS Server running on the Virtual Machine *will* conflict with other PXE/WDS servers on the network.</span><span style="color:#ff0000;"> Please ensure that you are the *only* PXE/WDS server on the network before starting! This is why the WDS service is disabled by default.</span></p>
<p>You can also burn the contents of the Win7 Media ISO to a DVD drive. Or perhaps copy the *.iso file to the local machine.</p>
<p>Use this server to evaluate MDT 2010 and try deploying Windows 7 (Evaluation Version), to your test lab.</p>
<p>When ready, you can boot the MDTVirtualClient Virtual Machine, using either the Win7 Media ISO image, or PXE/WDS. The Client Virtual Machine has been specially configured to auto install Windows 7 and upload the captured image back to the MDT 2010 Server in a completely hands off fashion.</p>
<p>More documentation, walkthroughs, and videos to follow.</p>
<h3>Link</h3>
<p>&lt;Edit&gt; No longer available.</p>
<p>Keith</p>
<address><a href="http://keithga.com"><span style="color:#993300;">Keith Garner</span></a><span style="color:#993300;"> is a Deployment Specialist with </span><a href="http://deployment.xtremeconsulting.com/"><span style="color:#993300;">Xtreme Consulting Group</span></a></address>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/193/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/193/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/193/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/193/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/193/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/193/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/193/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=193&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/11/13/new-tool-mdt-2010-build-outhydration-evaluation/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>

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

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

		<media:content url="http://tmintner.files.wordpress.com/2009/11/image_thumb2.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>
	</item>
		<item>
		<title>The Case of the Disappearing Task Sequences</title>
		<link>http://deployment.xtremeconsulting.com/2009/11/13/the-case-of-the-disappearing-task-sequences/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/11/13/the-case-of-the-disappearing-task-sequences/#comments</comments>
		<pubDate>Fri, 13 Nov 2009 15:00:08 +0000</pubDate>
		<dc:creator>tmintner</dc:creator>
				<category><![CDATA[MDT 2010]]></category>
		<category><![CDATA[VBscript]]></category>
		<category><![CDATA[DeployRoot]]></category>
		<category><![CDATA[Empty]]></category>
		<category><![CDATA[MDT]]></category>
		<category><![CDATA[Task Sequences]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/?p=185</guid>
		<description><![CDATA[We’ve gotten quite a few emails on this so I figured it was time to put this on the blog.   The problem that most people run into is that sometimes when they go through the Lite Touch Client Deployment Wizard, the task sequence list is empty.  So what causes the task sequence list to [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=185&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>We’ve gotten quite a few emails on this so I figured it was time to put this on the blog. <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />   The problem that most people run into is that sometimes when they go through the Lite Touch Client Deployment Wizard, the task sequence list is empty.  So what causes the task sequence list to be empty?  The simple answer is if the DeployRoot cannot be found or is incorrect.  The DeployRoot is the location of the DeploymentShare or content of the MDT Media Point. </p>
<p>&nbsp;</p>
<p>Here is the basic process that should help troubleshoot the problem:</p>
<p>· Windows PE boots up and runs litetouch.wsf</p>
<p>· Litetouch.wsf calls ztigather /inifile:bootstrap.ini and the DeployRoot value is read from the bootstrap.ini</p>
<p>· Litetouch.wsf then makes a call to connect to the DeployRoot using the wizard credentials or the credentials in the bootrap.ini</p>
<p>· Litetouch.wsf then calls ztigather and reads the values from the customsettings.ini (note if a full Media Deployment is inserted in the DVD or USB drive the customsettings.ini will be read from that location instead of the DeployRoot)</p>
<p>· If the DeployRoot value has changed In the customsettings.ini, the value is updated and Litetouch.wsf tries to connect to the DeployRoot</p>
<p>· The wizard is started and the tasksequences.xml file is read from the DeployRoot</p>
<p>· If the DeployRoot does not contain a valid tasksequences.xml then a blank Task Sequence wizard is displayed</p>
<p>&nbsp;</p>
<p>Steps to troubleshoot:</p>
<p>· Open BDD.Log</p>
<p>· Search for the value DeployRoot and do a Find Next to make sure that all values in the log file for DeployRoot are the same.  If they are not then there is some setting either in CustomSettings.ini, the database, or on local media that is changing the value</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/185/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/185/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/185/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/185/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/185/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/185/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/185/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/185/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/185/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/185/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/185/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/185/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/185/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/185/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=185&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/11/13/the-case-of-the-disappearing-task-sequences/feed/</wfw:commentRss>
		<slash:comments>17</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/240858a50784c41cedfbc35048e21064?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">tmintner</media:title>
		</media:content>
	</item>
		<item>
		<title>Validation: Passing the MDT 2008 Certification Exam</title>
		<link>http://deployment.xtremeconsulting.com/2009/11/12/validation-passing-the-mdt-2008-certification-exam/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/11/12/validation-passing-the-mdt-2008-certification-exam/#comments</comments>
		<pubDate>Thu, 12 Nov 2009 19:00:22 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/?p=182</guid>
		<description><![CDATA[Took the Microsoft Deployment Toolkit 2008 Certification exam today. I passed!!! I’ve been an in-depth Microsoft technical guy for 14 years now, yet I’ve never gotten around to actually taking any Certification test before. And I figured that since I was on the Dev team for MDT 2008, I’d start with 070-635 (Microsoft Deployment Toolkit [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=182&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Took the Microsoft Deployment Toolkit 2008 Certification exam today.</p>
<p><strong>I passed!!!</strong></p>
<p>I’ve been an in-depth Microsoft technical guy for 14 years now, yet I’ve never gotten around to actually taking any Certification test before.</p>
<p>And I figured that since I was on the Dev team for MDT 2008, I’d start with 070-635 (Microsoft Deployment Toolkit 2008, Desktop Deployment). I took the test cold, no studying.</p>
<p>It was kind of weird going back and taking the test for MDT 2008. There have been two product releases since then, MDT 2008 Update 1 and MDT 2010. And I’ve been working on Windows 7/MDT 2010 components now for about a full year.</p>
<p>I’d take some more exams, but I had to pay for this one out of my own pocket. Perhaps in the new year.</p>
<p>Tim Mintner mentioned once that he took this test as well. Which wasn’t really fair, since he helped write the questions. :^)</p>
<p>Keith</p>
<address><a href="http://keithga.com"><span style="color:#993300;">Keith Garner</span></a><span style="color:#993300;"> is a Deployment Specialist with </span><a href="http://deployment.xtremeconsulting.com/"><span style="color:#993300;">Xtreme Consulting Group</span></a></address>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/182/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/182/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/182/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/182/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/182/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/182/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/182/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/182/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/182/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/182/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/182/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/182/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/182/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/182/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=182&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/11/12/validation-passing-the-mdt-2008-certification-exam/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>
	</item>
		<item>
		<title>How to delete files that won&#8217;t delete</title>
		<link>http://deployment.xtremeconsulting.com/2009/11/11/how-to-delete-files-that-wont-delete/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/11/11/how-to-delete-files-that-wont-delete/#comments</comments>
		<pubDate>Wed, 11 Nov 2009 20:38:05 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[MDT 2010]]></category>
		<category><![CDATA[Troubleshooting]]></category>
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/?p=125</guid>
		<description><![CDATA[One of the frustrations when working with beta software is dealing with constant changes and little support for cross-build (not major version) upgrading. During the development cycle for MDT 2010, one component that had constant change was the Windows Automated Installation Kit. MDT requires several components from the WAIK to perform correctly, so we were [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=125&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>One of the frustrations when working with beta software is dealing with constant changes and little support for cross-build (not major version) upgrading.</p>
<p>During the development cycle for MDT 2010, one component that had constant change was the Windows Automated Installation Kit. MDT requires several components from the WAIK to perform correctly, so we were constantly upgrading.</p>
<p>One of the components, the WIMGAPI.dll was particularly nasty. The WAIK installer would set the permissions on the file so regular users could not delete it, and the intra-build upgrades didn’t replace the file automatically. Luckily, if you are using the final released (RTM) version of the WAIK, and upgrading from a previously released version, you should be OK.</p>
<h4>Why are these files so hard to delete?</h4>
<p>Windows protects some installed files by giving only the “Trusted Installer” account access to the file, and explicitly denying everyone else access, including administrators and the SYSTEM account.</p>
<p>Running the icacls.exe command on wimgapi.dll reveals:</p>
<pre>NT SERVICE\TrustedInstaller:(F)
BUILTIN\Administrators:(RX)
NT AUTHORITY\SYSTEM:(RX)
BUILTIN\Users:(RX)</pre>
<p>The problem is that normal users and administrators don’t have full access to the file and are not allowed to modify the permissions.</p>
<h4>How to Modify “Trusted Installer” files</h4>
<p>If you ever find yourself in the situation where you need to modify/delete files that are &#8220;trusted installer&#8221; protected, here is what I do:</p>
<ol>
<li>Start up an elevated command prompt (with administrator privileges).</li>
<li>Run “<em>icacls.exe &lt;file&gt;</em>” to see the current permissions.</li>
<li>Run “<em>TakeOwn.exe /f &lt;file&gt;</em>” to change ownership.</li>
<li>Run “<em>icacls.exe &lt;file&gt; /reset</em>” to change permissions.</li>
<li>Run “<em>icacls.exe &lt;file&gt;</em>” to display the new permissions.</li>
</ol>
<h4>Example:</h4>
<p><a href="http://tmintner.files.wordpress.com/2009/10/icacls.png"><img style="display:inline;border-width:0;" title="icacls" src="http://tmintner.files.wordpress.com/2009/10/icacls_thumb.png?w=244&h=138" border="0" alt="icacls" width="244" height="138" /></a> </p>
<p>Keith</p>
<address><a href="http://keithga.com"><span style="color:#993300;">Keith Garner</span></a><span style="color:#993300;"> is a Deployment Specialist with </span><a href="http://deployment.xtremeconsulting.com/"><span style="color:#993300;">Xtreme Consulting Group</span></a></address>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/125/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/125/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/125/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/125/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/125/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/125/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/125/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/125/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/125/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/125/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/125/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/125/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/125/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/125/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=125&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/11/11/how-to-delete-files-that-wont-delete/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>

		<media:content url="http://tmintner.files.wordpress.com/2009/10/icacls_thumb.png" medium="image">
			<media:title type="html">icacls</media:title>
		</media:content>
	</item>
		<item>
		<title>Changing Boot order for MDT Litetouch</title>
		<link>http://deployment.xtremeconsulting.com/2009/11/10/changing-boot-order-for-mdt-litetouch/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/11/10/changing-boot-order-for-mdt-litetouch/#comments</comments>
		<pubDate>Tue, 10 Nov 2009 20:37:02 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[MDT 2010]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/?p=112</guid>
		<description><![CDATA[Microsoft Deployment Toolkit (MDT) has the ability to initiate a new computer installation from several different sources: Boot from Litetouch CD Boot image. This is about a 200MB *.iso image that allows you to connect to a deployment share on the network. Network Booting. You can also take the Litetouch Boot image and PXE boot over [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=112&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Microsoft Deployment Toolkit (MDT) has the ability to initiate a new computer installation from several different sources:</p>
<ul>
<li><strong>Boot from Litetouch CD Boot image</strong>. This is about a 200MB *.iso image that allows you to connect to a deployment share on the network.</li>
<li><strong>Network Booting</strong>. You can also take the Litetouch Boot image and PXE boot over the network if you have a WDS (Windows Deployment Services) Server available.</li>
<li><strong>Media Builds</strong>. You can also copy a subset of the deployment share onto a DVD drive for installs that do not have any network access or slow network access.</li>
<li><strong>OEM installs</strong>. If you have a Media Build ready, MDT also has the ability to prepare the DVD for OEM installation.</li>
<li><strong>USB Flash/USB Hard Disk</strong>. If you have a USB Drive, you can prepare the drive to boot either the Litetouch Boot Image, or a Litetouch Media image to boot off of USB. This is helpful if you are trying to deploy an image that is larger than 8GB, the largest DVD Dual Layer size.</li>
</ul>
<p>Booting from CD/DVD and from the hard disk are fairly straight forwards. But booting from Network and/or USB requires a little bit of work.</p>
<p>Just a few years ago, in order to boot from other devices, each user would need to ensure that the local machine was configured to boot from these other devices by going into the BIOS at the start of the computer boot-up sequence. This method had problems, since it’s possible to configure the machine to boot into these other devices and leave the machine in an unsecure state.</p>
<p>I had a case recently where a user re-configured the boot order to boot from a USB Hard disk first for a &#8220;New Computer&#8221; install from USB. Unfortunately, he forgot to change the BIOS boot order back to the default settings after he initiated the install, so after the MDT 2010 Litetouch “New Computer” WinPE phase was complete, it did not reboot into the OS, it booted back into WinPE.</p>
<p>Thankfully, most modern BIOS’es have the ability to boot from these other devices without permanently changing the boot order into an unsafe configuration.</p>
<h3>Recommended configurations:</h3>
<p>So, what if the boot order settings of your BIOS have been modified beyond recognition?</p>
<p>For most machines, I recommend the following boot order:</p>
<ul>
<li>Boot from CD-ROM</li>
<li>Boot from Hard Disk</li>
<li>Boot from Network</li>
<li>Everything else</li>
</ul>
<p>For Security Paranoid people, I recommend:</p>
<ul>
<li>Boot from Hard Disk</li>
<li>Boot from CD ( Remove from the list if possible )</li>
<li>Boot From Network ( Remove from the list if possible )</li>
<li>Everything else</li>
</ul>
<p>For Network/Lab machines that Boot from WDS, you could also do:</p>
<ul>
<li>Boot from Network</li>
<li>Boot From CD-ROM</li>
<li>Boot From Hard Disk</li>
<li>Everything Else</li>
</ul>
<h3>Dynamic Selection of Boot Devices</h3>
<p>Instead of modifying the boot order in the BIOS, I recommend changing the BIOS boot order dynamically per boot. Most Modern PC’s support the ability to dynamically select the BIOS boot order during boot up using some combination of F12, F10, or sometimes: F9</p>
<p>For example, my Dell machines, pressing F12 should bring up a menu of all available boot devices.</p>
<p>My HP machines have a similar option, pressing F9 should bring up a menu of available boot devices as well.</p>
<p>Keith</p>
<address><a href="http://keithga.com"><span style="color:#993300;">Keith Garner</span></a><span style="color:#993300;"> is a Deployment Specialist with </span><a href="http://deployment.xtremeconsulting.com/"><span style="color:#993300;">Xtreme Consulting Group</span></a></address>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/112/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/112/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/112/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/112/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/112/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/112/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/112/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/112/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/112/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/112/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/112/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/112/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/112/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/112/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=112&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/11/10/changing-boot-order-for-mdt-litetouch/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>
	</item>
		<item>
		<title>Windows Update in MDT 2010</title>
		<link>http://deployment.xtremeconsulting.com/2009/11/09/windows-update-in-mdt-2010/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/11/09/windows-update-in-mdt-2010/#comments</comments>
		<pubDate>Mon, 09 Nov 2009 20:13:45 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[MDT 2010]]></category>
		<category><![CDATA[Troubleshooting]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/?p=105</guid>
		<description><![CDATA[I have a confession to make, ZTIWindowsUpdate.wsf was written by me, it&#8217;s my fault. When it works, it&#8217;s the biggest time saver for getting my machines up to date, when it&#8217;s not working, yes even I get frustrated. It was designed to fill problem of mine and still has some advantages for the right customers. I wrote [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=105&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I have a confession to make, ZTIWindowsUpdate.wsf was written by me, it&#8217;s my fault. When it works, it&#8217;s the biggest time saver for getting my machines up to date, when it&#8217;s <strong><em>not </em></strong>working, yes even I get frustrated. It was designed to fill problem of mine and still has some advantages for the right customers.</p>
<p>I wrote it back in 2007 when I was working for Microsoft IT. At the time, Microsoft IT didn’t have a good Update/Patching story, there were some tools that ran occasionally as part of Group Policy, but it was hard to tell if a given machine was up to date, and what the correct manifest of patches for a given machine were. I was setting up a Litetouch deployment server and wanted to ensure that each machine was up to date when litetouch was done.</p>
<p>ZITWindowsUpdate.wsf was designed to fulfill a specific task: Update the local machine to the latest Updates/Patches/Drivers from Windows Update (WU), Microsoft Update (MU), or a WSUS server.</p>
<p>When the script works, its great. Most of my Dell and HP test machines have great Windows Update Driver support, so I have to spend less time updating my MDT 2010 Out-Of-Box driver folder with the latest drivers. I also don’t have to spend too much time staying up to date on the latest patches from Microsoft (hello patch Tuesday). The script does a good job downloading the latest/greatest patches from Microsoft.</p>
<p>However, things are not always perfect, and it does require some work once in a while. This might be due to new packages that don’t install properly, or other problems.</p>
<p>Most of the changes to ZTIWindowsUpdate.wsf between MDT 2008 and MDT 2010 were changes to improve the robustness of the system if the package failed to install.</p>
<p>One example was a specific patch from Windows Update that would try to install, and fail. However it reported back to the system that it passed. The script would keep retrying, and get into an infinite loop. We added some better logic to ensure that ZTIWindowsUpdate would not get into those kinds of infinite loops.</p>
<p>By default, ZTIWindowsUpdate.wsf will install everything from the WU/MU servers. There are some exceptions:</p>
<ul>
<li>If the package says that it “can” request user input, then we skip over the update. ZTIWindowsUpdate.wsf should be fully automated, and User Input could break automation. I added this primarily for IE7 and IE8 updates. <strong>So be sure you have IE8 install packages elsewhere if you require IE8</strong>.</li>
<li>We skip Windows Vista and Windows 7 Ultimate “Language Pack” files. It’s just too much data to download.</li>
<li>We can also skip packages for a specific KB article, or by Package ID.</li>
</ul>
<h3>Manually Excluding Updates</h3>
<p>Occasionally you may come across cases where you need to exclude specific packages from installing on ZTIWindowsUpdate.wsf.</p>
<p>First step is to find the bdd.log or ZTIWindowsUpdate.log file generated by your test machine. We need the log files to know which Update ID numbers to exclude. While Microsoft Deployment is running, the log will be located at c:\minint\smsosd\osdlogs, however after the installation has finished, the logs could be uploaded to your SLShare Log Share, or to c:\windows\temp\deploymentlogs.</p>
<p>At the start of the log there will be some connection/diagnostic information. ZTIWindowsUpdate.wsf needs to connect to Microsoft Servers to ensure that the runtime binaries are up to date (yes, even Windows Update needs updating). You’ll want to look for the line “Start Search…”, then we see a list of packages:</p>
<pre>Start Search...  INSTALL - d49c3450-6646-4fbc-9e67-da7947bf3f13 -
Update for Microsoft Office Outlook 2007 Junk Email Filter (KB974810)   
  SKIP  - 254a9c2e-0431-4a37-b977-f1652d9d4b4d -
Windows Malicious Software Removal Tool x64 - October 2009 (KB890830)   </pre>
<p>Here we see a list of all the relevant packages Windows Update has returned for this machine.</p>
<ul>
<li>First column is either “INSTALL” or “SKIP”, all items marked “INSTALL” are to be installed, all items marked “SKIP” are *not* going to be installed.</li>
<li>Then we see a 36 character GUID – This is the unique ID For the package. Please note that x86 and x64 packages of the same fix may have different ID’s.</li>
<li>A short description of the fix.</li>
<li>And sometimes we may have also have the associated Microsoft KB article.</li>
</ul>
<p>Once you have identified the package you wish to exclude in the future, you can add the ID or the KB article in your customsettings.ini file. Test the install again to ensure that all packages are marked as “SKIP” in the log file, and you are good to go.</p>
<p>Here are some examples of ID’s that I included recently in my customsettings.ini file.</p>
<pre>WUMU_ExcludeKB1 = 941160  ; Ultimate Extras WUMU_ExcludeKB2 = 928416  ; .NET Framework 3.0 WUMU_ExcludeKB3 = 955020  ; Add En/De words to dictionary WUMU_ExcludeKB4 = 905474  ; Windows Genuine Advantage ; Bad AuthenTec Driver, blocks installation.
WUMU_ExcludeID001 = 3a130260-44f8-4769-9b9e-57c3bbd4ce45</pre>
<h3>Other</h3>
<p>One trick I use often when testing ZTIWindowsUpdate.wsf directly is to use the /query flag.</p>
<pre>net use z: <a href="//\\server\deploymentshare$">\\server\deploymentshare$</a>
cd /d z:\scripts
cscript <a href="//\\server\deploymentshare$\scripts\ztiwindowsupdate.wsf">\ztiwindowsupdate.wsf</a> /query</pre>
<p>When you specify the flag, it will only query windows update, it won’t download or install anything. This is helpful if you need to test your WUMU_ExcludeKB or WUMU_ExcludeID entries to see if they match.</p>
<p>Keith</p>
<address><a href="http://keithga.com"><span style="color:#993300;">Keith Garner</span></a><span style="color:#993300;"> is a Deployment Specialist with </span><a href="http://deployment.xtremeconsulting.com/"><span style="color:#993300;">Xtreme Consulting Group</span></a></address>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/105/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/105/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/105/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/105/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/105/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/105/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/105/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/105/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/105/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/105/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/105/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/105/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/105/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/105/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=105&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/11/09/windows-update-in-mdt-2010/feed/</wfw:commentRss>
		<slash:comments>16</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>
	</item>
		<item>
		<title>Example application exported by MDTAppExport</title>
		<link>http://deployment.xtremeconsulting.com/2009/11/06/example-application-exported-by-mdtappexport/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/11/06/example-application-exported-by-mdtappexport/#comments</comments>
		<pubDate>Fri, 06 Nov 2009 19:05:14 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[MDT 2010]]></category>
		<category><![CDATA[PowerShell]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/?p=171</guid>
		<description><![CDATA[Wanted to include at least one example of what a MDTAppExport.exe powershell script looks like. So for your review, I have included a sample for 7-zip. Link 7-zip.MDT.ps1 About 7-zip 7-zip is a popular file archiver that supports numerous file formats, and is available for free over the internet. What also makes 7-zip a great [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=171&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Wanted to include at least one example of what a MDTAppExport.exe powershell script looks like.</p>
<p>So for your review, I have included a sample for 7-zip.</p>
<h4><strong>Link</strong></h4>
<p><a href="http://deploymentlive.com/blog/7-zip.MDT.ps1">7-zip.MDT.ps1</a></p>
<h4><strong>About 7-zip</strong></h4>
<p>7-zip is a popular file archiver that supports numerous file formats, and is available for free over the internet.</p>
<p>What also makes 7-zip a great example, is that you can download the *.msi package directly over the internet.</p>
<p>The command line MSI installer, msiexec.exe, supports the ability to install packages over http://, so there is no need to download the package first. Note that this could cause problems if you try to install 7-zip on a machine that does not have full internet access.</p>
<p>Typically, in real world MDT Deployment Shares, I would download the packages first, but this makes for a fine example.</p>
<h4><strong>Persistent Drives</strong></h4>
<p>For MDT 2010, the concept of the “Deployment Share” ( Distribution Share, or Distribution Point) has been abstracted even further than that in MDT 2008. A &#8216;”Deployment Share” can be a Network Share, a Local folder, and it doesn’t even have to be on the same machine as the MDT 2010 Workbench Console is currently running on.</p>
<p>It’s also possible to keep track of multiple “Deployment Shares” within a running MDT 2010 Workbench console. The “Deployment Shares” that are added to the MDT 2010 Workbench Console are called “Persistent-Drives” because they are persisted across Workbench sessions.</p>
<p>Behind the scenes, you can see the settings by looking at the configuration file:</p>
<p>&#8220;%appdata%\Microsoft\Microsoft Deployment Toolkit\user.config&#8221;</p>
<h4><strong>Which Drive to use</strong></h4>
<p>I wanted to develop a script that you could run as-is and have the contents instantly added to your MDT Deployment Share.</p>
<p>However, since a machine can have multiple Deployment Shares, or none at all, the question became:</p>
<blockquote><p>How do we find the default MDT Deployment Share, if any exists?</p></blockquote>
<p>The best way I figured was to use the Persistent Drives defined in the MDT 2010 Workbench. The Persistent Drive meta-data could be easily read using the powershell cmdlet: “Get-MDTPersistentDrve”.</p>
<p>If more than one drive was defined in the MDT 2010 Workbench, then we just select the first one. Typically defined as “DS001:”</p>
<h4><strong>Header</strong></h4>
<p>With all powershell scripts we start off with a list of parameters:</p>
<pre>#  MDT 2010 Exported Application
#  By Keith S. Garner (KeithGa.com)
#  7-Zip File Archiver 4.65   
param(
 [string]$Folder = "Applications\Common", 
 [string]$DPDrive = "DS001",
 [string]$DPShare = "\\$env:ComputerName\DS$",
 [switch]$Confirm,
 [switch] $Verbose,
 [switch] $WhatIf )</pre>
<p>Here the Administrator is given the ability to override several defaults:</p>
<ul>
<li>Folder – This is the folder where the Application will be placed in the workbench, and displayed in the Deployment Wizard.</li>
<li>DPDrive – This is the name of the Deployment Drive used in Powershell. Unless defined as something non-standard by the Administrator, it should be DS001:</li>
<li>DPShare – This is the UNC path to the Deployment Share, typically a Networking Share. It’s only needed if there are no persistent drives defined.</li>
<li>Confirm, Verbose, WhatIf – For more information look <a href="http://blogs.msdn.com/powershell/archive/2007/02/25/supporting-whatif-confirm-verbose-in-scripts.aspx">here</a>.</li>
</ul>
<h4><strong>Restore</strong></h4>
<p>Once started, the script will need to load the MDT 2010 environment into powershell, and restore everything:</p>
<pre>if (!(test-path "$($DPDrive)`:\"))
{
 Add-PSSnapin Microsoft.BDD.PSSnapIn […]
 restore-MDTPErsistentDrive […]    
 if ((!(test-path "$($DPDrive)`:\"))
     -band (test-path $DPShare)) {
   New-PSDrive -Name $DPDrive -PSProvider `
       MDTProvider -Root $DPShare […]
 }
 if (!(test-path "$($DPDrive)`:\")) {
   throw "$DPDrive not Mounted/Persisted."
 }
}</pre>
<p>First of all, we don’t do anything if the DPDrive is already visible to Powershell. This means that a calling “wrapper” script can perform the restoration of the Persistent drives once, and we won’t need to perform it each time for every application being imported.</p>
<p>Otherwise, we add the Powershell Snapin, and restore any MDT 2010 Persistent Drive(s).</p>
<p>We then test for DPDrive, if there is still nothing there, then we mount a new DPDrive to the Deployment Share given.</p>
<p>We test for DPDrive again, if there is *still* nothing there, then we fail.</p>
<h4><strong>Folders</strong></h4>
<p>If we are importing the application into an Application Folder that does not exist, we must first create the folder.</p>
<pre>foreach($NewPath in "$($DPDrive)`:\$Folder")
{
  if(!(test-path $NewPath))
  {
    new-item -type directory $NewPath –[…]
  }
}</pre>
<h4><strong>Import Application</strong></h4>
<p>Finally, we import the application using the settings gleamed from the application meta-data in MDT 2010.</p>
<pre>$7zipx86 = import-MDTApplication
-path '$($DPDrive)`:\$Folder'
-ShortName '7zipx86' […] 
-Name '7-Zip File Archiver 4.65 – x86'
-CommandLine 'msiexec.exe /qb- […] /i <a href="http://[..]'">http://[…]'</a>
-UninstallKey '{23170F69-40C1-2701-0462-000001000000}'
-enable 'True' -hide 'True'
-SupportedPlatform @(
   'All x86 Pre-Vista',
   'All x86 Vista and Newer'
)</pre>
<h4><strong>More to come</strong></h4>
<p>I hope this will be the first of many Application Examples from MDT 2010.</p>
<p>Keith</p>
<address><a href="http://keithga.com"><span style="color:#993300;">Keith Garner</span></a><span style="color:#993300;"> is a Deployment Specialist with </span><a href="http://deployment.xtremeconsulting.com/"><span style="color:#993300;">Xtreme Consulting Group</span></a></address>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/171/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/171/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/171/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/171/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/171/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/171/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/171/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/171/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/171/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/171/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/171/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/171/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/171/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/171/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=171&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/11/06/example-application-exported-by-mdtappexport/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>
	</item>
		<item>
		<title>Export &amp; share MDT Applications (New Tool)</title>
		<link>http://deployment.xtremeconsulting.com/2009/11/06/export-share-mdt-applications-new-tool/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/11/06/export-share-mdt-applications-new-tool/#comments</comments>
		<pubDate>Fri, 06 Nov 2009 19:00:12 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/?p=169</guid>
		<description><![CDATA[New for MDT 2010 Presented here is the MDT Application Export Tool (MDTAppExport.exe). This tool will export the settings for a selected Application in MDT 2010 into a Powershell *.ps1 script file. This portable powershell script file can be used to import the Application settings into another instance of MDT 2010. One of the coolest [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=169&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><em>New for MDT 2010</em></p>
<p>Presented here is the MDT Application Export Tool (MDTAppExport.exe). This tool will export the settings for a selected Application in MDT 2010 into a Powershell *.ps1 script file. This portable powershell script file can be used to import the Application settings into another instance of MDT 2010.</p>
<p>One of the coolest new features of MDT 2010 is the new Powershell Programming interface. This interface makes it possible for 3rd party programs to Read, Manipulate, and Create settings in your MDT 2010 environment.</p>
<p>Still, Powershell is a relatively new programming language. And many IT Pros may still be unfamiliar with it. Which makes this tool so cool, you can create powershell scripts without knowing powershell.</p>
<h4>Advantages</h4>
<p>Exporting to Powershell provides a good way to share Application metadata between MDT 2010 Shares:</p>
<ul>
<li>Upgrade your existing MDT 2008 Deployment Share to MDT 2010, and extract out all of your applications for archival.</li>
<li>Move individual applications between test and production environments without copying other items still in test.</li>
<li>Use Powershell scripts as a way to document/store the settings for each application in your environment.</li>
<li>Share your solutions to difficult/complex application installations to IT Community Forums (please don’t share software files you don’t have the rights to redistribute :^) ).</li>
</ul>
<h4>Notes</h4>
<p>While running the Application Script Export Tool Wizard, Simply select one of the Deployment Shares already present in the Microsoft Deployment Toolkit 2010 Workbench. Then Select the Applications you wish to export, and the Target location they should be exported to.</p>
<p>Most applications should export without trouble 97-98% of the time. However it is generally a good idea to review the settings created by the tool to ensure that everything is correct.</p>
<p>This script will create one Powershell *.ps1 script file for each item selected in the wizard. If an Application has dependencies defined in the MDT 2010 Workbench, then the dependencies will also be included in the same *.ps1 file.</p>
<p>All Source Files imported into the Deployment Workbench when the Application was created will be copied to the Target Location.</p>
<p><strong>Limitations</strong></p>
<ul>
<li>You must have MDT 2010 installed on the same machine this tool is running on.</li>
<li>You must have your Deployment Share visible in the MDT 2010 Deployment workbench.</li>
<li>This tool will create one *.ps1 for each application Selected, and all dependent applications will be imported to the same *.ps1 file.</li>
<li>If you have hidden and or non-enabled applications defined, they will also be Displayed in the Application Script Export Tool Wizard.</li>
<li>This tool will create scripts with the –hidden and –enabled settings as defined in the workbench.</li>
<li>This tool will *<strong>not</strong>* export the Language Field. Language Field is not used in ZTIApplications.wsf</li>
<li>If you are exporting Sources, the files must be located in the Deployment Share, meaning that you can’t have a %ResourceRoot% at a different location from the %DeployRoot%.</li>
<li>If there were any errors in copying the Sources to the Target, there should be an<br />
“# ERROR – &lt;something&gt;”<br />
line present in the source.</li>
<li>Please ensure that all application items imported into MDT are placed in their own directory. Installing more than one Application Item from the same directory may result in duplicate files in the MDT system.</li>
</ul>
<h4>Links</h4>
<p><a href="http://cid-5407b03614346a99.office.live.com/self.aspx/Blog/MDTApplicationExport.zip">http://cid-5407b03614346a99.office.live.com/self.aspx/Blog/MDTApplicationExport.zip</a></p>
<h4>Further</h4>
<p>This tool has tremendous potential. Beyond just coping application settings between MDT 2010 Servers.</p>
<p>We are already using this tool here at Xtreme Consulting Services to create “repositories” of applications that can be used to quickly build out MDT 2010 deployments for our customers. A fullly functional MDT 2010 Litetouch Deployment System setup on site in Hours, not Days, or Weeks.</p>
<p>It could also be the start of a public repository of Applications for MDT Administrators. Although I have not yet figured out a great hosting site for this kind of community/forum. Have some ideas, drop me a line.</p>
<p><strong>Update</strong>: 11/13/09 &#8211; I updated the tool to generate scripts that support Powershell v1.0 better, and to fix a problem with applications with spaces in the shortname.</p>
<p>Keith</p>
<address><a href="http://keithga.com"><span style="color:#993300;">Keith Garner</span></a><span style="color:#993300;"> is a Deployment Specialist with </span><a href="http://deployment.xtremeconsulting.com/"><span style="color:#993300;">Xtreme Consulting Group</span></a></address>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/169/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/169/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/169/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/169/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/169/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/169/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/169/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/169/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/169/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/169/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/169/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/169/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/169/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/169/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=169&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/11/06/export-share-mdt-applications-new-tool/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>
	</item>
		<item>
		<title>Windows 7 and that pesky System Partition</title>
		<link>http://deployment.xtremeconsulting.com/2009/11/05/windows-7-and-that-pesky-system-partition/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/11/05/windows-7-and-that-pesky-system-partition/#comments</comments>
		<pubDate>Thu, 05 Nov 2009 23:15:29 +0000</pubDate>
		<dc:creator>tmintner</dc:creator>
				<category><![CDATA[MDT 2010]]></category>
		<category><![CDATA[Windows 7]]></category>
		<category><![CDATA[Disks]]></category>
		<category><![CDATA[MDT]]></category>
		<category><![CDATA[Partitions]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/2009/11/05/windows-7-and-that-pesky-system-partition/</guid>
		<description><![CDATA[If you have installed Windows 7 or Server 2008 R2 through either the Windows media or MDT then you have noticed that a 100 – 300 MB system partition is created that is hidden when you finish in the final operating system (well it is not really hidden, it just doesn’t have a drive letter).&#160; [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=170&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>If you have installed Windows 7 or Server 2008 R2 through either the Windows media or MDT then you have noticed that a 100 – 300 MB system partition is created that is hidden when you finish in the final operating system (well it is not really hidden, it just doesn’t have a drive letter).&#160; The Microsoft Windows team made that decision so that bitlocker could easily be enabled at a later time without having to repartition the disks.&#160; However if you don’t ever plan on enabling Bitlocker on your Windows 7 or Server 2008 R2 systems you can use MDT with an extra variable in the customsettings.ini and MDT won’t create the extra partition.&#160; The variable is:</p>
<p>DoNotCreateExtraPartition = YES</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/170/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/170/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/170/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/170/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/170/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/170/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/170/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/170/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/170/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/170/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/170/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/170/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/170/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/170/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=170&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/11/05/windows-7-and-that-pesky-system-partition/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/240858a50784c41cedfbc35048e21064?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">tmintner</media:title>
		</media:content>
	</item>
		<item>
		<title>Capturing Debug Information from Client Scripts (New tool)</title>
		<link>http://deployment.xtremeconsulting.com/2009/11/05/capturing-debug-information-from-client-scripts/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/11/05/capturing-debug-information-from-client-scripts/#comments</comments>
		<pubDate>Thu, 05 Nov 2009 19:30:48 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/?p=118</guid>
		<description><![CDATA[(New for MDT 2010) From my previous post, I wrote that for MDT 2010, there is a new common command line parameter called “/debugcapture”. This command line parameter will disable the common MDT error handling functions and let any errors echo out to the console. This is great when calling MDT Client scripts directly from [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=118&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><em>(New for MDT 2010)</em></p>
<p>From my previous post, I wrote that for MDT 2010, there is a new common command line parameter called “/debugcapture”. This command line parameter will disable the common MDT error handling functions and let any errors echo out to the console.</p>
<p>This is great when calling MDT Client scripts directly from cscript.exe, however it is not helpful when calling from within a MDT Litetouch Task Sequence. Since the MDT 2010 Litetouch Stand Alone Task Sequencer does not capture the output from the client scripts for logging.</p>
<h4>Introducing ZTICscript</h4>
<p>To solve this problem, I developed a wrapper script called ZTICScript. It will call a client script with the new /debugcapture flag, capture any error output, and copy the error lines to the standard bdd.log system.</p>
<p>It’s been really great when developing new client scripts that may have errors, and speeds up the identification of bad code. As I mentioned in my earlier post, using the information captured with the /debugcapture flag, I can identify the line number and sometimes the variable name of of any errors.</p>
<p>Another cool thing about getting the output from /debugcapture rather than from the default error handler, is that it can also capture compile time errors. For example, if you have written a script with an unterminated string:</p>
<pre>wscript.echo "Unterminated string</pre>
<p>These errors are nasty, since the bdd.log will not display any errors from the script. Sometimes you may need to go into the smsts.log file to find out which script it was executing when it failed.</p>
<h3>Step 1 – Modify your TS.xml file.</h3>
<p>Open up your Ts.xml file ( %deployroot%\control\&lt;dir&gt;\ts.xml ), or ( %programfiles%\microsoft deployment toolkit\templates\client.xml ), and replace every instance of</p>
<pre>cscript.exe</pre>
<p>with</p>
<pre>cmd.exe /c %scriptroot%\zticscript.cmd</pre>
<p>For example, if you are trying to capture debugging information from the ZTINextPhase.wsf script, the command line should look like (single line):</p>
<pre>cmd.exe /c %scriptroot%\zticscript.cmd
"%SCRIPTROOT%\ZTINextPhase.wsf"</pre>
<h3>Step 2 – Create ZTICScript.cmd and ZTICScript_log.wsf.</h3>
<p>Get the script files from <a href="http://cid-5407b03614346a99.office.live.com/self.aspx/Blog/ZTICScript.zip">here</a>, and copy them to your %DeployRoot%\script directory.</p>
<p>That’s it!</p>
<p>Now, if there are any errors in your script that would normally be caught by the standard MDT Exception Handler, they will instead be output to the console and piped to the bdd.log file. Very helpful in scenarios where normal bdd.log files are not returning the correct information.</p>
<p>Please note, that for some reason, I have been unable to get this script to wrap around LTISysprep.wsf 100% of the time. I just haven’t had the time to debug what’s happening. I think it may have to do with the heavy resource requirements of sysprep.exe.</p>
<h3>Attachments:</h3>
<p><a href="http://cid-5407b03614346a99.office.live.com/self.aspx/Blog/ZTICScript.zip">http://cid-5407b03614346a99.office.live.com/self.aspx/Blog/ZTICScript.zip</a></p>
<p>Keith</p>
<address><a href="http://keithga.com"><span style="color:#993300;">Keith Garner</span></a><span style="color:#993300;"> is a Deployment Specialist with </span><a href="http://deployment.xtremeconsulting.com/"><span style="color:#993300;">Xtreme Consulting Group</span></a></address>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/118/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/118/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/118/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/118/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/118/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/118/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/118/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/118/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/118/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/118/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/118/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/118/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/118/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/118/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=118&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/11/05/capturing-debug-information-from-client-scripts/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>
	</item>
		<item>
		<title>Getting Debug information in Client Scripts</title>
		<link>http://deployment.xtremeconsulting.com/2009/11/05/getting-debug-information-in-client-scripts/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/11/05/getting-debug-information-in-client-scripts/#comments</comments>
		<pubDate>Thu, 05 Nov 2009 19:00:48 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[MDT 2010]]></category>
		<category><![CDATA[Troubleshooting]]></category>
		<category><![CDATA[VBscript]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/?p=115</guid>
		<description><![CDATA[(New for MDT 2010) Most of the client script in BDD/MDT are written in VBScript. VBScript is a powerful scripting language, and it is avaiable on all versions of windows that MDT supports. I would have loved to work in a more modern language like Powershell and/or C#, however when deploying an operating system from [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=115&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><em>(New for MDT 2010)</em></p>
<p>Most of the client script in BDD/MDT are written in VBScript. VBScript is a powerful scripting language, and it is avaiable on <strong><em>all </em></strong>versions of windows that MDT supports.</p>
<p>I would have loved to work in a more modern language like Powershell and/or C#, however when deploying an operating system from scratch, there are very few guarantees what kind of run time environments are going to be available. The .NET framework, for example, is not available on Windows XP. So back to VBScript for me.</p>
<h4>Error Handling</h4>
<p>VBScript has the ability to skip/ignore errors if it comes across them when executing them, using the “On error resume next” command.</p>
<p>This can be helpful if you have a long series of non-interdependent tasks. However if you have a long set of dependent tasks, this can be problematic since the failure of any one step in the task could cause the entire thing to fail.</p>
<p>I would have to agree with Eric Lippert’s <a href="http://blogs.msdn.com/ericlippert/archive/2004/08/25/error-handling-in-vbscript-part-three.aspx">comments</a> about error handling in VBScript (He was one of the architects of VBScript):</p>
<blockquote><p>I think I&#8217;m old school in saying that error handling should be very tight. Handle errors where you expect to find them. Everything else is left to fail. <strong>I&#8217;d rather have a program end in a messy death than to blithely continue on in an unpredictable fashion</strong>. Some of my cohorts would rather do broad error handling (whole subroutines or sections of the script). They seem to assume that only the errors they expect will happen. And even if other errors do happen, it&#8217;s better to have the script finish as best it can than to do nothing at all.</p>
</blockquote>
<p>Most of the code in the MDT client scripts is written with this in mind. If it’s possible for a routine to return an error, the script will handle the error cases. If the results of a routine are unexpected or bad, then we want to halt execution to be notified of the problem, rather than continue in an unexpected state.</p>
<h4>MDT Error Handling</h4>
<p>BDD/MDT was written with a really cool feature that allows it to pick up run time errors identified by the VBScript host program. These errors are logged to the bdd.log file for review later.</p>
<p>The only problem is that the built in error handling routines made available by the VBScript Host program are not as complete as if we were to run it using cscript.exe with the error written to the console.</p>
<p>For example, here is what an undefined variable error would look like when processed by MDT and it’s built in error handling routines:</p>
<pre>c:\&gt;cscript zti_test.wsf
ZTI ERROR - Unhandled error returned by
zti_test: Variable is undefined (500)</pre>
<p>New for MDT 2010, is the ability to disable the “on error resume next” main error handler in all MDT client VBScript programs, with the “<strong><span style="text-decoration:underline;">/DebugCapture</span></strong>” flag. When we run the same script with that flag, we get the following output:</p>
<pre>c:\&gt;cscript zti_test.wsf <strong>/debugcapture</strong>
Property debugcapture is now =
c:\zti_test.wsf(10, 10) Microsoft
VBScript runtime error: Variable
is undefined: 'UndefinedVariableFoo'</pre>
<p>Note that when calling the script with the /debugcapture flag, the cscript.exe host program not only found the run time error as in the previous example, but it also displayed the <strong><span style="text-decoration:underline;">line number</span></strong> where the error occurred and the <strong><span style="text-decoration:underline;">name</span></strong> of the actual variable!?!?</p>
<p>Really cool stuff, and it has been invaluable for me while debugging scripts in MDT 2010.</p>
<p>Keith</p>
<address><a href="http://keithga.com"><span style="color:#993300;">Keith Garner</span></a><span style="color:#993300;"> is a Deployment Specialist with </span><a href="http://deployment.xtremeconsulting.com/"><span style="color:#993300;">Xtreme Consulting Group</span></a></address>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/115/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/115/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/115/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/115/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/115/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/115/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/115/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/115/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/115/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/115/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/115/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/115/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/115/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/115/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=115&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/11/05/getting-debug-information-in-client-scripts/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>
	</item>
		<item>
		<title>Troubleshooting Database Issues with MDT 2010</title>
		<link>http://deployment.xtremeconsulting.com/2009/11/04/troubleshooting-database-issues-with-mdt-2010/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/11/04/troubleshooting-database-issues-with-mdt-2010/#comments</comments>
		<pubDate>Wed, 04 Nov 2009 20:00:30 +0000</pubDate>
		<dc:creator>tmintner</dc:creator>
				<category><![CDATA[MDT 2010]]></category>
		<category><![CDATA[Troubleshooting]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[VBscript]]></category>
		<category><![CDATA[Database]]></category>
		<category><![CDATA[MDT]]></category>
		<category><![CDATA[ztigather]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/?p=155</guid>
		<description><![CDATA[There have been a few really great posts on how to troubleshoot database connection issues with BDD and MDT over the past couple of years.  Ben Hunter wrote a great post on this here: http://blogs.technet.com/benhunter/archive/2007/07/10/bdd-2007-troubleshooting-database-issues.aspx.  However, if you try to do this with MDT 2010 you will get a few errors in the output.  In [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=155&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>There have been a few really great posts on how to troubleshoot database connection issues with BDD and MDT over the past couple of years.  Ben Hunter wrote a great post on this here: <a title="http://blogs.technet.com/benhunter/archive/2007/07/10/bdd-2007-troubleshooting-database-issues.aspx" href="http://blogs.technet.com/benhunter/archive/2007/07/10/bdd-2007-troubleshooting-database-issues.aspx">http://blogs.technet.com/benhunter/archive/2007/07/10/bdd-2007-troubleshooting-database-issues.aspx</a>.  However, if you try to do this with MDT 2010 you will get a few errors in the output.  In MDT 2010 the structure of the scripts have changed somewhat and the functionality of ztigather has been extended to also gather additional information that now requires some compiled code.  So with MDT 2010, you can perform the same steps with the following modifications:</p>
<p>1. Create a folder on the client device and copy the following files from the deployment point to this folder:</p>
<ul>
<li>ZTIGather.wsf</li>
<li>ZTIGather.xml</li>
<li>ZTIUtility.vbs</li>
<li>CustomSettings.ini</li>
<li>ZTIDataAccess.vbs (new script file in MDT 2010 for accessing data sources)</li>
<li>Create a Tools folder and create an X86 and X64 folders underneath the Tools folder.  Copy the Microsoft.BDD.Utility.dll file from the Tools\X64 and Tools\X86 folders in your deployment share to your newly created Tools\X86 and Tools\X64 folder</li>
</ul>
<p>  2. Delete C:\MININT directory if it already exists. This folder can also be located at X:\MININT if the C drive is not available.</p>
<p><em><strong>NOTE: </strong>MDT stores configuration and progress information in the MININT folder, if this folder is not removed between tests then the results will be invalid.</em></p>
<p>  3. From the command prompt navigate to the newly created folder and execute the rule processing script using the following command:</p>
<blockquote><p><em>&#8220;cscript.exe ZTIGather.wsf /debug:true&#8221;</em></p></blockquote>
<p>      The script will then be processed and the results outputted to the command prompt and a log file ( .\MININT\SMSOSD\OSDLOGS\ZTIGather.log)</p>
<p><em><strong>NOTE: </strong>The script can be run within Windows PE or the host operating system.</em></p>
<p>  4. Review the results of the script.</p>
<p>Enjoy!</p>
<p>Tim Mintner is a Principal Consultant with Xtreme Consulting Group</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/155/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/155/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/155/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/155/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/155/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/155/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/155/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/155/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/155/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/155/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/155/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/155/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/155/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/155/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=155&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/11/04/troubleshooting-database-issues-with-mdt-2010/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/240858a50784c41cedfbc35048e21064?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">tmintner</media:title>
		</media:content>
	</item>
		<item>
		<title>Prevent machine from falling asleep.</title>
		<link>http://deployment.xtremeconsulting.com/2009/11/04/prevent-machine-from-falling-asleep/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/11/04/prevent-machine-from-falling-asleep/#comments</comments>
		<pubDate>Wed, 04 Nov 2009 19:00:33 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/?p=160</guid>
		<description><![CDATA[Erik, asked about a post from last week regarding “Falling asleep on the job (task)&#8221;: Would you mind sharing that tool you wrote ? Also, is ES_CONTINUOUS and ES_SYSTEM_REQUIRED flags cleared when the system is rebooted? What I am thinking of is if you run a util that set the above at the beginning of [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=160&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Erik, asked about a post from last week regarding “Falling asleep on the job (task)&#8221;:</p>
<blockquote><p>Would you mind sharing that tool you wrote <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  ?</p>
<p>Also, is ES_CONTINUOUS and ES_SYSTEM_REQUIRED flags cleared when the system is rebooted?</p>
<p>What I am thinking of is if you run a util that set the above at the beginning of the Lite Touch process. Would you need to run another util that that clears the EXECUTION_STATE flag at the end of the Lite Touch sequence? Or will it be cleared automatically when you reboot the computer using a Restart Computer entry in the Task Sequence?</p></blockquote>
<h4><strong>More background</strong></h4>
<p>When you set the Execution state, although you are setting the state of the entire system, the Operating System will only keep track of the requested state during the lifespan of the Thread that made the call. Once the thread (or process) exits, the request is no longer valid, and the system goes back to whatever the last state was.</p>
<p>In MDT 2010, this was easily solved by making the call to SetThreadExecutionState() from within the litetouch.wsf script. Since the Litetouch.wsf script thread stayed alive during the Task Execution phase (in the background), that worked out fine.</p>
<p>Also, the Thread Execution State does not persist across reboots, so cleanup was not necessary, just exit out of litetouch.wsf, and the machine can go into hibernation.</p>
<h4><strong>Side Effects</strong></h4>
<p>This *may* have a side effect. If you choose to display the final Summary Dialog Box at the end of the Litetouch process, the machine will stay alive during that time, until the user comes back to the machine.</p>
<h4><strong>New Tool</strong></h4>
<p>Just in case you have “Other” tasks that require you to keep a machine alive, here is a tool I wrote back in 2005 (cleaned up here). This *.exe tool will keep a Windows Machine alive while it is running. Meaning the machine won’t be able to fall asleep either by hibernate or by suspend.</p>
<p>The tool has to remain running while you want the machine to stay awake. So you can run it with the command line:</p>
<pre>start KeepAlive.exe</pre>
<p>This program is a Windows Program and will run with no user interface. You can see if it’s running by checking the task manager.</p>
<p>When you are done, just run the command again (Either with or without the –close flag:</p>
<pre>KeepAlive.exe</pre>
<p>If KeepAlive.exe detects that another instance of itself is running in the background holding up Thread Execution State, the new instance of KeepAlive.exe will signal to the previous instance to stop and release the Execution State.</p>
<p>The source code is included</p>
<h3>Link</h3>
<p><a href="http://cid-5407b03614346a99.office.live.com/self.aspx/Blog/KeepAlive.zip">http://cid-5407b03614346a99.office.live.com/self.aspx/Blog/KeepAlive.zip</a></p>
<p>Keith</p>
<address><a href="http://keithga.com"><span style="color:#993300;">Keith Garner</span></a><span style="color:#993300;"> is a Deployment Specialist with </span><a href="http://deployment.xtremeconsulting.com/"><span style="color:#993300;">Xtreme Consulting Group</span></a></address>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/160/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/160/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/160/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/160/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/160/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/160/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/160/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/160/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/160/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/160/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/160/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/160/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/160/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/160/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=160&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/11/04/prevent-machine-from-falling-asleep/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>
	</item>
		<item>
		<title>Writing custom scripts with MDT 2010</title>
		<link>http://deployment.xtremeconsulting.com/2009/11/03/writing-custom-scripts-with-mdt-2010/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/11/03/writing-custom-scripts-with-mdt-2010/#comments</comments>
		<pubDate>Wed, 04 Nov 2009 05:26:15 +0000</pubDate>
		<dc:creator>tmintner</dc:creator>
				<category><![CDATA[MDT 2010]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[VBscript]]></category>
		<category><![CDATA[custom script]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/2009/11/03/writing-custom-scripts-with-mdt-2010/</guid>
		<description><![CDATA[Ben Hunter wrote a great blog post a few years ago on how to create a custom VBscript to use with BDD 2007 (http://blogs.technet.com/benhunter/archive/2007/04/15/bdd-2007-ndash-tips-and-tricks-ndash-how-to-write-a-custom-script.aspx).  Ben’s script template will still work with MDT 2010 however If you have spent any time looking at the scripts in MDT 2010 you will notice that the format of the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=153&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Ben Hunter wrote a great blog post a few years ago on how to create a custom VBscript to use with BDD 2007 (<a title="http://blogs.technet.com/benhunter/archive/2007/04/15/bdd-2007-ndash-tips-and-tricks-ndash-how-to-write-a-custom-script.aspx" href="http://blogs.technet.com/benhunter/archive/2007/04/15/bdd-2007-ndash-tips-and-tricks-ndash-how-to-write-a-custom-script.aspx">http://blogs.technet.com/benhunter/archive/2007/04/15/bdd-2007-ndash-tips-and-tricks-ndash-how-to-write-a-custom-script.aspx</a>).  Ben’s script template will still work with MDT 2010 however If you have spent any time looking at the scripts in MDT 2010 you will notice that the format of the built in scripts have changed.  So you might be wondering how to create a custom script with MDT 2010.  MDT 2010 introduced some script structure changes to better handle error reporting and to make the scripts a bit easier to read and test.  The new template is listed below.  So how do you use the template?  Start by pasting the following code into a script file with a WSF extension (somefile.wsf).  After creating the file edit the Class <strong>ScriptName</strong>  with the name of your script.  As an example if you named your custom script somescript.wsf then the Class would be Class SomeScript.</p>
<p>Now that you have your script and your class named correctly you can add your code under the Function Main.  Once you are finished you just need to save the file and put it into the scripts folder in your deployment share. </p>
<p>So what does the new structure give you beyond what Ben’s post originally pointed out?  First it gives you some nice debugging capabilities.  Normally you would run your script by calling cscript.exe “%scriptroot%\somescript.wsf” in the task sequence.  If you want to use the advanced debugging you can add /debugcapture.  Adding the /debugcapture will turn on advanced debugging features by disabling the standard On Error Resume Next in the scripts and capturing any errors in the script that might occur and displaying them to the screen.  For example if you forgot to declare a variable the /debugcapture will display the variable that could not be found and the line number that the error occurred on.  You can also use your own test hook scripts to unit test the different functions in the script (more on that later).  For right now, enjoy the template and we will definitely be posting more custom script samples over the next few months!</p>
<p>&lt;job id=&#8221;ZTIConnect&#8221;&gt;<br />
   &lt;script language=&#8221;VBScript&#8221; src=&#8221;ZTIUtility.vbs&#8221;/&gt;<br />
   &lt;script language=&#8221;VBScript&#8221;&gt;</p>
<p>Option Explicit<br />
RunNewInstance</p>
<p>&#8216;//&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
&#8216;//  Global Constants<br />
&#8216;//&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</p>
<p>Const ANSWER_TO_LIFE_THE_UNIVERSE_AND_EVERYTHING = 42</p>
<p>&#8216;//&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
&#8216;//  Main Class<br />
&#8216;//&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</p>
<p>Class <em>ScriptName</em></p>
<p>    &#8216;//&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
    &#8216;//  Global constant and variable declarations<br />
    &#8216;//&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</p>
<p>    Dim iRetVal</p>
<p>    &#8216;//&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
    &#8216;//  Constructor to initialize needed global objects<br />
    &#8216;//&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</p>
<p>    Private Sub Class_Initialize</p>
<p>    End Sub<br />
    &#8216;//&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
    &#8216;//  Main routine<br />
    &#8216;//&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</p>
<p>    Function Main</p>
<blockquote><p>‘Insert your code here</p></blockquote>
<p>    End Function</p>
<p>End Class</p>
<p>   &lt;/script&gt;<br />
&lt;/job&gt;</p>
<p>&nbsp;</p>
<p>Tim Mintner is a Principal Consultant with Xtreme Consulting Group</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/153/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/153/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/153/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/153/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/153/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/153/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/153/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/153/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/153/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/153/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/153/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/153/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/153/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/153/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=153&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/11/03/writing-custom-scripts-with-mdt-2010/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/240858a50784c41cedfbc35048e21064?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">tmintner</media:title>
		</media:content>
	</item>
		<item>
		<title>Quickly add MSI package to MDT 2010 (New Tool)</title>
		<link>http://deployment.xtremeconsulting.com/2009/11/03/quickly-add-msi-package-to-mdt-2010-new-tool/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/11/03/quickly-add-msi-package-to-mdt-2010-new-tool/#comments</comments>
		<pubDate>Tue, 03 Nov 2009 19:00:16 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[MDT 2010]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/?p=149</guid>
		<description><![CDATA[New Tool! MDTMSIApp.exe This tool can quickly import an application defined in a MicroSoft Installer (*.msi) package. This tool will extract out many of the required fields required to import an Applicaiton into MDT 2010 directly from the *.msi meta-data. One of the most most overlooked features of MDT is the ability to define the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=149&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>New Tool! MDTMSIApp.exe</p>
<p>This tool can quickly import an application defined in a MicroSoft Installer (*.msi) package. This tool will extract out many of the required fields required to import an Applicaiton into MDT 2010 directly from the *.msi meta-data.</p>
<p>One of the most most overlooked features of MDT is the ability to define the &#8220;Uninstall registry key name&#8221; for each Application Item. When defined, during install time ZTIApplications will skip over the installation of any application by checking the windows registry.</p>
<p>This is a &#8220;Best Practice&#8221; for applications, as it will save time and errors during installation if a subset of applications were installed previously. The most common scenario is a set of applications that are installed in the base &#8220;Common&#8221; image before sysprep. Then afterwards, the user is provided a &#8220;full&#8221; list of applications to install, MDT install will easily skip over any application already installed in the base image.</p>
<p>There is also a command line interface below for scripting.</p>
<h4><strong>Fields auto-generated</strong></h4>
<p>The following Fields are Auto-Added:</p>
<ul>
<li>ShortName &#8211; Generated from the name of the *.msi package.</li>
<li>Folder &#8211; Placed in the root of .\Applications by default. Can be changed in the command line.</li>
<li>Version &#8211; From the MSI Package &#8220;ProductVersion&#8221;.</li>
<li>UnInstallKey &#8211; From MSI Package &#8220;ProductCode&#8221;.</li>
<li>Publisher &#8211; From MSI Package &#8220;Manufacturer&#8221;</li>
<li>Name &#8211; From MSI Package &#8220;PackageName&#8221;</li>
<li>DisplayName &#8211; From MSI Package<br />
&#8220;Manufacturer&#8221; + &#8220;PackageName&#8221; + &#8220;ProductVersion&#8221;<br />
(If the Manufacturer name is duplicated in the PackageName, only one is added).</li>
<li>CommandLine &#8211; The following default command line will be used:<br />
&#8216;msiexec.exe /qb- /l*vx %LogPath%\<strong><span style="text-decoration:underline;">&lt;ShortName&gt;</span></strong>.log REBOOT=ReallySuppress /i <strong><span style="text-decoration:underline;">&lt;MSIFile&gt;</span></strong>&#8216;</li>
</ul>
<h4><strong>Links</strong></h4>
<p><a href="http://cid-5407b03614346a99.office.live.com/self.aspx/Blog/MDTMSIApp.zip">http://cid-5407b03614346a99.office.live.com/self.aspx/Blog/MDTMSIApp.zip</a></p>
<p>Keith</p>
<address><a href="http://keithga.com"><span style="color:#993300;">Keith Garner</span></a><span style="color:#993300;"> is a Deployment Specialist with </span><a href="http://deployment.xtremeconsulting.com/"><span style="color:#993300;">Xtreme Consulting Group</span></a></address>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/149/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/149/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/149/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/149/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/149/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/149/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/149/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/149/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/149/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/149/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/149/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/149/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/149/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/149/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=149&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/11/03/quickly-add-msi-package-to-mdt-2010-new-tool/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>
	</item>
		<item>
		<title>Install Driver EXE Package (New Tool)</title>
		<link>http://deployment.xtremeconsulting.com/2009/11/02/install-driver-exe-package-new-tool/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/11/02/install-driver-exe-package-new-tool/#comments</comments>
		<pubDate>Mon, 02 Nov 2009 19:30:23 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[MDT 2010]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[VBscript]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/?p=142</guid>
		<description><![CDATA[New Tool! ZTIInstallDriverExePackage.wsf As I described in my earlier post. MDT has a great system for Driver Management. You import a driver via it’s *.INF file, and that driver will be installed on every machine where that PnP ID is found. No need to associate a driver via a Make/Model. However, there are some cases [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=142&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>New Tool! ZTIInstallDriverExePackage.wsf</p>
<p>As I described in my earlier post. MDT has a great system for Driver Management. You import a driver via it’s *.INF file, and that driver will be installed on every machine where that PnP ID is found. No need to associate a driver via a Make/Model.</p>
<p>However, there are some cases (very rare), when a driver package can’t be installed by *.inf file alone, or a *.exe installation package may need to be installed along side a specific piece of hardware.</p>
<p>The ZTIInstallDriverExePackage.wsf tool was designed to allow an Driver *.exe installation package to associate with a set of PnPID’s defined in the Workbench.</p>
<h4><strong>Steps</strong></h4>
<ul>
<li>Download the Driver Installation *.exe Package to your MDT Workbench machine. Ensure that you copy the package to its own directory.</li>
<li>Add the Application to the MDT workbench as you would any other Application Installation Package.</li>
<li>You will need to extract out the GUID for the Application added. It may be in the depoyment share under \Control\applications.xml</li>
<li>Extract out as much of the driver *.inf component as you can to a separate directory (not a sub-directory). There are several tools available on the internet for extracting out compressed files from Self extracting Executables. My personal favorite is 7-Zip (see 7-zip.org)</li>
<li>Add the Driver Package to the MDT workbench as you would any other Driver Package.<br />
It is not necessary that it be fully functional. However the PnPID’s should be properly added.</li>
<li>Once the driver has been imported successfully. Open the Properties for the new device
<ul>
<li>You may disable the driver. Uncheck “Enabled”. Disable only if you want the Exe Package to be the only way for the driver to be installed.</li>
<li>Add the following string to the comments section:<br />
“DriverExePackage {GUID}”<br />
Where {GUID} is the Application GUID extracted from the 3<sup>rd</sup> step above.</li>
</ul>
</li>
<li>Copy the ZTIInstallDriverExePackage.wsf file to the Deployment Share under &#8230;\Scripts\</li>
<li>Add a new Step in your Task Sequence calling ZTIInstallDriverExePackage.wsf<br />
cscript.exe “%ScriptRoot%\ZTIInstallDriverExePackage.wsf”</li>
</ul>
<h4><strong>Script Flow</strong></h4>
<p>ZTIInstallDriverExePackage.wsf will operate in a manner similar to ZTIDrivers.wsf.</p>
<ul>
<li>It will enumerate though all hardware devices on the machine, and extract out their PnPID’s. </li>
<li>For each Hardware PnPID found, it will try to match that ID with any driver found in the Deployment Share.</li>
<li>For each Driver package found it will search the comments field, searching for the “DriverExePackage” string followed by the Application GUID.</li>
<li>The script will then call ZTIApplications.wsf with the GUID from the Comments section.</li>
</ul>
<p>ZTIApplications.wsf will do a good job of ensuring that the corresponding application is installed only once.</p>
<h4><strong>Assumptions</strong></h4>
<ul>
<li>In most cases, I personally recommend sticking with the *.inf only method of driver installation. The Exe only method should only be used in rare cases.</li>
<li>This script uses the drivers.xml file from the distribution share to associate the PnPID’s with the Application GUID. It is important that the MDT Workbench Add the driver package to the system. IT is not necessary for the driver package to actually work. The Driver Package can be disabled if it is failing to work, it should not be removed.</li>
<li>To associate a Device with an Application Item, you also need to add the Application GUID of the device prefixed with the string “DriverExePackage” into the comments of the driver in the MDT Workbench.</li>
</ul>
<h4><strong>Links</strong></h4>
<p><a href="http://cid-5407b03614346a99.office.live.com/self.aspx/Blog/ZTIInstallDriverExePackage.zip">http://cid-5407b03614346a99.office.live.com/self.aspx/Blog/ZTIInstallDriverExePackage.zip</a></p>
<p>Keith</p>
<address><a href="http://keithga.com"><span style="color:#993300;">Keith Garner</span></a><span style="color:#993300;"> is a Deployment Specialist with </span><a href="http://deployment.xtremeconsulting.com/"><span style="color:#993300;">Xtreme Consulting Group</span></a></address>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/142/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/142/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/142/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/142/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/142/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/142/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/142/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/142/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/142/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/142/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/142/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/142/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/142/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/142/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=142&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/11/02/install-driver-exe-package-new-tool/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>
	</item>
		<item>
		<title>Background on Driver Installation in MDT</title>
		<link>http://deployment.xtremeconsulting.com/2009/11/02/background-on-driver-installation-in-mdt/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/11/02/background-on-driver-installation-in-mdt/#comments</comments>
		<pubDate>Mon, 02 Nov 2009 19:15:25 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[MDT 2010]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/?p=135</guid>
		<description><![CDATA[Most Drivers are installed via an *.inf file. These *.inf files contain all the meta-data needed to define what a driver does, what devices it’s used for, and how it’s installed, including files, registry keys, and any other custom action(s). When a new hardware device is added to the system, Windows will detect the device [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=135&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Most Drivers are installed via an *.inf file. These *.inf files contain all the meta-data needed to define what a driver does, what devices it’s used for, and how it’s installed, including files, registry keys, and any other custom action(s).</p>
<p>When a new hardware device is added to the system, Windows will detect the device and gather as much information about it as possible. This includes a list of Plug and Play Device ID’s (PnPID’s) that are unique to that make and model of device. For example:</p>
<pre>PCI\VEN_8086&amp;DEV_4236&amp;SUBSYS_10118086</pre>
<p>An *.inf file in turn will contain a list of Plug and Play devices its compatible with.</p>
<h4><strong>Matching</strong></h4>
<p>When presented with a list of Devices, and a collection of drivers, the OS will find all combinations that match, and determine which one is the best (most descriptive) match.</p>
<p>What’s cool about MDT is if you have more than one possible match, the MDT system will copy all possible matches to the OS. Windows has Driver Ranking Algorithms that will determine the best possible match given a set of possible matches.</p>
<p>It can be important, therefore, to insure that you keep your MDT Driver store clear of all duplicates.</p>
<h4><strong>Driver Install Packages</strong></h4>
<p>Most hardware manufacturers will produce a driver in two parts:</p>
<ul>
<li>A basic driver package, Containing an *.inf file describing the package, a *.sys file containing any driver code, and a *.cat digital signature. The digital signature indicates that the driver has gone through some basic testing, what it’s origin is, and that it has not been tampered with. This driver package could be copied to Windows Update or the Windows Update Catalog, and is typically the kind of driver package that is best when importing drivers into MDT 2010 workbench.</li>
<li>In addition, a company may wish to include add-ons: Tools, Utilities, or Setup wrappers for end-users to install the drivers from the *.inf package more easily. An example might be an advanced radio tuning tool included with a Wi-Fi Driver, or perhaps a Video Communications sample included with a Web-Cam driver. These packages are typically optional, however sometimes they may be required.</li>
</ul>
<p>When searching for a basic driver *.inf package, typically the best place to start is looking *within* an *.exe Driver Install Package. I like to use <a href="http://7zip.org">7-Zip</a> to search within self extracting *.exe files for *.inf files.</p>
<h4><strong>MDT Drivers</strong></h4>
<p>MDT was designed to handle the OS relationship between Devices and Drivers. In other systems, you might assign a driver package to a specific Make and Model. However, whenever a new system comes out, you need to re-define the relationship between the drivers and the Make and Models. Say you have the drivers defined for the Dell D620, and you need to add support for the Dell D820. These two machines mostly share the same class of components, with the same PnP ID’s. With the Driver system in MDT, the drivers are not associated with the Make/Model, instead they are associated with the PnPID of the device itself. All the components of the Dell D620 will automatically be used in the D820, if they share the same PnPID (same device), which in this case they mostly do.</p>
<p>&nbsp;</p>
<p>Keith</p>
<address><a href="http://keithga.com"><span style="color:#993300;">Keith Garner</span></a><span style="color:#993300;"> is a Deployment Specialist with </span><a href="http://deployment.xtremeconsulting.com/"><span style="color:#993300;">Xtreme Consulting Group</span></a></address>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/135/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/135/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/135/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/135/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/135/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/135/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/135/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/135/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/135/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/135/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/135/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/135/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/135/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/135/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=135&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/11/02/background-on-driver-installation-in-mdt/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>
	</item>
		<item>
		<title>Tools Week at Xtreme Consulting Deployment Team</title>
		<link>http://deployment.xtremeconsulting.com/2009/11/02/tools-week-at-xtreme-consulting/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/11/02/tools-week-at-xtreme-consulting/#comments</comments>
		<pubDate>Mon, 02 Nov 2009 19:00:39 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[Announcements]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/?p=128</guid>
		<description><![CDATA[Got some tools to share this week. As many of you already know Tim, Keith, and about a half dozen other Specialists from Xtreme Consulting have recently come off an engagement with Microsoft, where we worked on the development team for the Microsoft Deployment Toolkit 2010. We are all extremely proud of this product, having [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=128&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Got some tools to share this week.</p>
<p>As many of you already know Tim, Keith, and about a half dozen other Specialists from Xtreme Consulting have recently come off an engagement with Microsoft, where we worked on the development team for the Microsoft Deployment Toolkit 2010.</p>
<p>We are all extremely proud of this product, having worked many long hours, to see a final product of such immense ability, and high quality.</p>
<p>During that time we developed solutions to solve “hundreds” of different problems and scenarios.</p>
<p>Submitted for your approval this week, is a collection of “other” tools for MDT 2010. Some of these tools fit a small niche, others are just demonstrations.</p>
<ul>
<li>We have a couple of driver examples.</li>
<li>Some tools for importing and exporting applications</li>
<li>And time permitting, some Powershell Scripting Demos!</li>
</ul>
<address><span style="color:#808000;">Do you have a problem that needs to be solved?<br />
Do you have an idea, and need someone to execute it?<br />
We are here to solve your Deployment Challenges. Large or small.</span></address>
<p>Keith</p>
<address><a href="http://keithga.com"><span style="color:#993300;">Keith Garner</span></a><span style="color:#993300;"> is a Deployment Specialist with </span><a href="http://deployment.xtremeconsulting.com/"><span style="color:#993300;">Xtreme Consulting Group</span></a></address>
<address></address>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/128/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/128/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/128/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/128/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/128/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/128/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/128/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/128/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/128/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/128/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/128/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/128/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/128/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/128/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=128&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/11/02/tools-week-at-xtreme-consulting/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>
	</item>
		<item>
		<title>How to filter out Platform Specific Applications</title>
		<link>http://deployment.xtremeconsulting.com/2009/10/30/how-to-filter-out-platform-specific-applications/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/10/30/how-to-filter-out-platform-specific-applications/#comments</comments>
		<pubDate>Fri, 30 Oct 2009 22:45:19 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[MDT 2010]]></category>

		<guid isPermaLink="false">http://deployment.xtremeconsulting.com/?p=90</guid>
		<description><![CDATA[A common question that comes up every now and then is: Using the Microsoft Deployment Toolkit deployment wizard, how do I filter out x86 applications when installing a x64 OS, and vice versa? Say you have two applications defined in the MDT Management Console: 7-Zip (x86 version) 7-Zip (x64 version) You have done the right [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=90&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>A common question that comes up every now and then is:</p>
<blockquote><p><em>Using the Microsoft Deployment Toolkit deployment wizard, how do I filter out x86 applications when installing a x64 OS, and vice versa?</em></p></blockquote>
<p>Say you have two applications defined in the MDT Management Console:</p>
<ul>
<li>7-Zip (x86 version)</li>
<li>7-Zip (x64 version)</li>
</ul>
<p>You have done the right thing and marked each one with the correct client platform types (See my previous blog entry). For x86, the new Platform Types in MDT 2010 are:</p>
<ul>
<li>All x86 Pre-Vista</li>
<li>All x86 Vista and Newer</li>
</ul>
<p>And for x64, the new Platform Types are:</p>
<ul>
<li>All x64 Pre-Vista</li>
<li>All x64 Vista and Newer</li>
</ul>
<p>However, when you start up the Litetouch Deployment Wizard in MDT 2010, it does not filter out the “7-Zip (x86 version)” when installing a x64 OS, and does not filter out “7-Zip (x64 version)” when installing a x86 OS. This is by design.</p>
<p>The file ZTISupportedPlatforms.xml contains a list of all platform types, the corresponding WMI Query Language (WQL) string used to validate each Supported Platform Types.</p>
<p>Unfortunately, the WQL string needs to be validated during the actual application, not during the Deployment Wizard pages. Most of the time, the Wizard Page is not running <strong><span style="text-decoration:underline;">on</span></strong> the same as the OS we are installing <strong><span style="text-decoration:underline;">to</span></strong>, so the Supported Platforms WQL test will return back false information. Supported platforms can only be evaluated during the actual install when the OS is running.</p>
<p>So how do we get the only one Application or the other to display?</p>
<p>The trick here is to create a “Application Bundle”. An Application Bundle is an Application defined in the MDT Management Console, that does not perform any application installation itself, but instead contains a dependency on other applications that do the actual installation.</p>
<p>In the case above we would create a new Application Bundle in the Management Console called “7-Zip” that is dependent on “7-Zip (x86 version)” and “7-zip (x64 version)”.</p>
<p>We would also go back to the “7-Zip (x86 version)” and “7-zip (x64 version)” entries and mark them as “Hidden” in the Property Pages.</p>
<ul>
<li>7-Zip &lt;—New dependent on 7-zip x86 and x64</li>
<li>7-Zip (x86 version) &lt;&#8211; Hidden</li>
<li>7-Zip (x64 version) &lt;&#8211; Hidden</li>
</ul>
<p>Now in the Microsoft Deployment Toolkit Deployment Wizard Page we will see only one entry</p>
<ul>
<li>7-zip</li>
</ul>
<p>When it comes time to perform the actual installation, the ZTIApplications.wsf script will see that 7-Zip is dependent on two other items. When it tries to install the other two applications, only one will pass, depending on the platform type specified. The other platform type will not error, but silently continue.</p>
<p>Keith</p>
<address><a href="http://keithga.com"><span style="color:#993300;">Keith Garner</span></a><span style="color:#993300;"> is a Deployment Specialist with </span><a href="http://deployment.xtremeconsulting.com/"><span style="color:#993300;">Xtreme Consulting Group</span></a></address>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/90/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/90/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/90/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/90/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/90/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/90/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/90/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/90/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/90/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/90/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/90/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/90/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/90/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/90/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=90&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/10/30/how-to-filter-out-platform-specific-applications/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>
	</item>
		<item>
		<title>Custom Wizard Pages</title>
		<link>http://deployment.xtremeconsulting.com/2009/10/30/custom-wizard-pages/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/10/30/custom-wizard-pages/#comments</comments>
		<pubDate>Fri, 30 Oct 2009 20:09:26 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[MDT 2010]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/?p=102</guid>
		<description><![CDATA[I had a customer recently (a very large Windows-only IT Shop), who wanted a custom wizard page in MDT. Most of the wizard work I did on BDD/MDT was done by hand, editing html source code in a text editor. Michael Niehaus wrote an excellent tool to help develop and show MDT wizard pages in [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=102&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I had a customer recently (a very large Windows-only IT Shop), who wanted a custom wizard page in MDT.</p>
<p>Most of the wizard work I did on BDD/MDT was done by hand, editing html source code in a text editor. Michael Niehaus wrote an excellent tool to help develop and show MDT wizard pages in a C# application, however I prefer to develop by hand.</p>
<p>See: <a href="http://mdtwizardeditor.codeplex.com/">http://mdtwizardeditor.codeplex.com/</a></p>
<p>For this solution the customer wanted to allow their clients the ability to clean the partitions using the default MDT installation “New Computer” installation process, or to keep the existing partition configuration (and therefore keeping any 2nd data partition).</p>
<p>I created a web page that would query the partition configuration for disk 0, and display it in a graphical fashion, along with a graphical representation of the proposed “Clean” configuration.</p>
<p><a href="http://tmintner.files.wordpress.com/2009/10/clip_image002.jpg"><img style="display:inline;border-width:0;" title="clip_image002" src="http://tmintner.files.wordpress.com/2009/10/clip_image002_thumb.jpg?w=244&h=198" border="0" alt="clip_image002" width="244" height="198" /></a></p>
<p>Please note that there are technical problems with more than one partition on a Windows Deployment. It’s easy to setup, however, it can also creates management headaches later on if you need to service the machine.</p>
<p>Keith</p>
<address><a href="http://keithga.com"><span style="color:#993300;">Keith Garner</span></a><span style="color:#993300;"> is a Deployment Specialist with </span><a href="http://deployment.xtremeconsulting.com/"><span style="color:#993300;">Xtreme Consulting Group</span></a></address>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/102/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/102/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/102/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/102/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/102/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/102/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/102/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/102/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/102/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/102/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/102/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/102/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/102/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/102/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=102&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/10/30/custom-wizard-pages/feed/</wfw:commentRss>
		<slash:comments>20</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>

		<media:content url="http://tmintner.files.wordpress.com/2009/10/clip_image002_thumb.jpg" medium="image">
			<media:title type="html">clip_image002</media:title>
		</media:content>
	</item>
		<item>
		<title>Default state of &#8220;active&#8221; applications</title>
		<link>http://deployment.xtremeconsulting.com/2009/10/29/default-state-of-active-applications/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/10/29/default-state-of-active-applications/#comments</comments>
		<pubDate>Thu, 29 Oct 2009 22:26:28 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[MDT 2010]]></category>

		<guid isPermaLink="false">http://deployment.xtremeconsulting.com/?p=81</guid>
		<description><![CDATA[Noticed something the other day that got me stumped for a while. When adding an application in MDT 2010, you can create the application using the MDT 2010 Management Console, or you can use powershell as a programming interface. For a while now I had been using the following command in powershell to create applications [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=81&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Noticed something the other day that got me stumped for a while.</p>
<p>When adding an application in MDT 2010, you can create the application using the MDT 2010 Management Console, or you can use powershell as a programming interface.</p>
<p>For a while now I had been using the following command in powershell to create applications (example single line):</p>
<pre>import-MDTApplication
-path 'DS001:\Applications'
-ShortName 'MacroMedia'
-Name 'Adobe Macromedia Flash Player 10'
-CommandLine 'flash_player_ax.exe /S'
-WorkingDirectory '.\Applications\MacroMedia'
-DestinationFolder 'MacroMedia'
-ApplicationSourcePath '$LocalPath\Sources'</pre>
<p>However, I noticed that although my applications were appearing correctly in the Client Deployment Wizard, and installing correctly by ZTIApplications.wsf, they were not being copied from one Deployment point to another by the MDT Management Console (in my case a Media Deployment Point).</p>
<p>After some experimentation, I discovered that none of my applications added from my powershell scripts were “enabled” in the MDT Management Console. This was blocking the copies.</p>
<p>A simple addition to my scripts the explicit use of <strong>-enable “True”</strong>, fixed everything.</p>
<pre>import-MDTApplication
-path 'DS001:\Applications'
-ShortName 'MacroMedia'
-Name 'Adobe Macromedia Flash Player 10'
-CommandLine 'flash_player_ax.exe /S'
-WorkingDirectory '.\Applications\MacroMedia'
-DestinationFolder 'MacroMedia'
-ApplicationSourcePath '$LocalPath\Sources'
<strong>-enable 'True'</strong></pre>
<p>It appears that the client scripts and the server scripts have different interpretations of what the default of “enable” should be if the element is not present in the applications.xml file.</p>
<p>Luckily for me, it’s an easy fix/work around to my powershell scripts.</p>
<p>Keith</p>
<address><a href="http://keithga.com"><span style="color:#993300;">Keith Garner</span></a><span style="color:#993300;"> is a Deployment Specialist with </span><a href="http://deployment.xtremeconsulting.com/"></a></address>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/81/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/81/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/81/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/81/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/81/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/81/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/81/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/81/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/81/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/81/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/81/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/81/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/81/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/81/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=81&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/10/29/default-state-of-active-applications/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>
	</item>
		<item>
		<title>Recovery cmd.exe in Litetouch WinPE</title>
		<link>http://deployment.xtremeconsulting.com/2009/10/29/78/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/10/29/78/#comments</comments>
		<pubDate>Thu, 29 Oct 2009 22:11:24 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[MDT 2010]]></category>
		<category><![CDATA[Troubleshooting]]></category>

		<guid isPermaLink="false">http://deployment.xtremeconsulting.com/?p=78</guid>
		<description><![CDATA[(New for MDT 2010) One of the things we worked on for MDT 2010 were improvements to the user interface for “New Computer” scenarios in the Windows Pre-installation Environment (WinPE). WinPE is used by MDT 2010 Litetouch, and SCCM to prepare the machine for OS installation. It&#8217;s a bare bones implementation of Windows, with out [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=78&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><em>(New for MDT 2010)</em></p>
<p>One of the things we worked on for MDT 2010 were improvements to the user interface for “New Computer” scenarios in the Windows Pre-installation Environment (WinPE).</p>
<p>WinPE is used by MDT 2010 Litetouch, and SCCM to prepare the machine for OS installation. It&#8217;s a bare bones implementation of Windows, with out the Windows Shell (Start Button), and typically only runs with a command prompt &#8220;console&#8221; window.</p>
<p>One of the distracting things about BDD 2007 and MDT 2008, was the Console window that appeared at the start of the WinPE Litetouch New Computer” process. It really didn’t do anything, was a little distracting, and didn’t give MDT the feel of a polished product.</p>
<p>It’s fairly easy to use a different shell for WinPE, however we were concerned about proper error recovery. If something goes wrong with any child script in the process, we want to ensure that we have a chance to debug the problem before the machine reboots. If we replaced the standard WinPE shell with something that didn’t properly handle errors, then WinPE could reboot before we knew what happened.</p>
<p>We also wanted the ability to break out into a cmd.exe prompt if we needed to debug a background process or verify something else.</p>
<p>The final solution was to make some modifications to BDDRun.exe to act as a wrapper around wpeinit.exe. It does two things:</p>
<ul>
<li>It calls wpeinit.exe, and if wpeinit.exe returns any failure, it will launch a cmd.exe prompt allowing debugging.</li>
<li>It also launches a thread in the background monitoring for the user to press the F8 button, if pressed, it will launch a cmd.exe window for debugging.</li>
<li>If there are any instances of cmd.exe (spawned by pressing F8), and wpeinit.exe exits ready for a reboot, the bddrun.exe program will wait until all cmd.exe windows are closed. So be sure to close all windows if you expect the process to continue.</li>
<li>If you wish to disable the F8 feature, modify the unattend_pe_x86.xml and unattend_pe_x64.xml in the templates directory of your MDT 2010 installation, and replace “/Bootstrap” with “/BootstrapNoSF8”.</li>
</ul>
<p>Not sure why someone would want to disable the F8 windows (perhaps the F8 keystroke conflicts with another application. Disabling F8 won’t make things secure. Someone could still come in with a WinPE DVD and bypass the security.</p>
<p>Why is it called &#8220;SF8&#8243; not &#8220;F8&#8243;? I had originally programmed the keystroke to be Shift-F8 (similar to the Shift-F10 used by Windows Setup. However the feedback I got from early builds is that it should mimmic SCCM behaviour which uses just F8. I changed the keystroke from F8 to Shift-F8, but forgot to change the command line string from /BootstrapNoSF8 to /BootstrapNoF8. Sorry about that&#8230;</p>
<p>Keith</p>
<address><a href="http://keithga.com"><span style="color:#993300;">Keith Garner</span></a><span style="color:#993300;"> is a Deployment Specialist with </span><a href="http://deployment.xtremeconsulting.com/"><span style="color:#993300;">Xtreme Consulting Group</span></a></address>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/78/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/78/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/78/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/78/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/78/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/78/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/78/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/78/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/78/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/78/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/78/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/78/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/78/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/78/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=78&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/10/29/78/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>
	</item>
		<item>
		<title>How to debug MDT Litetouch/Driver Problems</title>
		<link>http://deployment.xtremeconsulting.com/2009/10/28/how-to-debug-mdt-litetouchdriver-problems/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/10/28/how-to-debug-mdt-litetouchdriver-problems/#comments</comments>
		<pubDate>Wed, 28 Oct 2009 19:00:38 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[MDT 2010]]></category>
		<category><![CDATA[Troubleshooting]]></category>
		<category><![CDATA[Drivers]]></category>
		<category><![CDATA[Lite Touch]]></category>
		<category><![CDATA[MDT]]></category>

		<guid isPermaLink="false">http://deployment.xtremeconsulting.com/?p=66</guid>
		<description><![CDATA[Someone posted a question yesterday about some problems they had getting a driver installed via MDT. In a previous job, I worked in Microsoft Developer Support supporting the Windows Device Driver Kit. I even wrote several driver installation KB articles, and samples for the Windows 2000 &#38; XP DDKs. Most recently, I re-wrote the ZTIDrivers.wsf script for [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=66&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Someone posted a question yesterday about some problems they had getting a driver installed via MDT. In a previous job, I worked in Microsoft Developer Support supporting the Windows Device Driver Kit. I even wrote several driver installation KB articles, and samples for the Windows 2000 &amp; XP DDKs. Most recently, I re-wrote the ZTIDrivers.wsf script for MDT 2010.</p>
<p>Here is a quick overview for adding (non-boot) drivers in Windows. <em>(Please note: Windows XP/2003 Boot drivers use a different process. Drivers like Storage Drivers. )</em></p>
<h3>ZTIDrivers.wsf process</h3>
<p>ZTIDrivers.wsf does not actually install a driver for each device during an OS installation. Instead during the pre-installation phase it will:</p>
<ul>
<li>Gather a list of all devices on the machine and their corresponding Plug and Play Device ID (PnPID). <br />
A PnPID might look something like: PCI\VEN_8086&amp;DEV_27C9&amp;SUBSYS_01C21028</li>
<li>It will then search for any matches in the &#8220;Out-of-Box Drivers&#8221; folder on your Deployment Share ( in the Out-of-Box Drivers folder, and the control\drivers.xml file).</li>
<li>For each driver package found, it will copy the driver locally into the c:\drivers folder.</li>
<li>For each folder added into c:\drivers. The folder will be added to the registry:<br />
HKLM\Software\Microsoft\Windows\CurrentVersion\DevicePath</li>
<li>When the real OS begins installation, and it finds new devices, it will look in these paths for the drivers.</li>
</ul>
<h3>ZTIDriver.wsf assumptions:</h3>
<p>Most of the time, it works just fine, however there are some things are assumed:</p>
<ul>
<li>You must be using a driver that contains at least one PnPID match with the device being installed.</li>
<li>Windows will only auto-install drivers that have a valid Driver Signature.<br />
If one file has been modified, or corrupted, even the *.inf file, the Signature is no longer valid.</li>
<li>You might be able to install non-signed drivers depending on the OS, but not for new OS&#8217;es like Vista 64-bit.</li>
<li>It is possible that there may be other drivers on the local machine that the OS feels are a better match to the driver from the Out-of-Box drivers folder.</li>
<li>It is also possible that the device just isn&#8217;t working, or the driver just doesn&#8217;t work.</li>
</ul>
<p>I typically only use drivers that are WHQL signed (Disclaimer: I used to work for Microsoft, WHQL), and since Windows Vista, Windows Server 2008, and Windows 7, 64-bit modes will only support signed drivers, it&#8217;s usually a good idea to get into the habit of using Signed Drivers only.</p>
<p><em>Shout out: Michael Niehaus was kind enough to add a check for signed drivers in the MDT 2010 Workbench Driver Import routines. (Thanks Mike!)</em></p>
<p>To see if your driver is signed, go into the MDT 2010 Workbench, Out-of-Box Drivers, and find your Driver. When found, open the &#8220;Properties&#8221; page, &#8220;Details&#8221; tab, and verify the checkbox at the bottom of the screen: &#8220;This driver is WHQL signed&#8221;.</p>
<h3>Debugging Steps:</h3>
<p>If you are having troubles with device drivers, it&#8217;s typically a good idea to start looking at some basic things:</p>
<ul>
<li>Verify that you have the correct drivers imported into the workbench. Including:
<ul>
<li>Go into the MDT Workbench and find your driver. Verify that the drivers are installed.</li>
<li>You should also be able to verify the drivers are present in the Deployment Share.</li>
</ul>
</li>
<li>Test the deployment on physical hardware with the actual device installed. It may not be possible to test Video Driver X with Video Card Y, unless they have a subset of matching PnPID&#8217;s.</li>
<li>Look to see if the Drivers were copied by ZTIDrivers.wsf.
<ul>
<li>You should see ZTIDrivers.wsf identify the PnPID for your device.</li>
<li>You should also see ZTIDrivers.wsf xcopy the driver from the Deployment Share locally.</li>
</ul>
</li>
<li>If the device and corresponding driver were found by ZTIDrivers.wsf and copied locally. Then Windows should find the device and install. Best place to look for more information is the SetupAPI.log file, used by the PnP Subsystem to log all issues with Device Driver Installation.</li>
</ul>
<h3>More information:</h3>
<p><a href="http://support.microsoft.com/kb/927521">Windows Vista setup log file locations</a><br />
<a href="http://www.microsoft.com/whdc/driver/install/setupapilog.mspx">Troubleshooting Device Installation with the SetupAPI Log File</a><br />
<a href="http://www.microsoft.com/whdc/driver/install/setupapi.mspx">Windows Setup and Device Installation Logging</a><br />
<a href="http://msdn.microsoft.com/en-us/library/ms791354.aspx">Troubleshooting Device and Driver Installations</a></p>
<p>Keith</p>
<address><a href="http://keithga.com"><span style="color:#993300;">Keith Garner</span></a><span style="color:#993300;"> is a Deployment Specialist with </span><a href="http://deployment.xtremeconsulting.com/"><span style="color:#993300;">Xtreme Consulting Group</span></a></address>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/66/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/66/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/66/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/66/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/66/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/66/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/66/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/66/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/66/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/66/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/66/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/66/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/66/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/66/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=66&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/10/28/how-to-debug-mdt-litetouchdriver-problems/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>
	</item>
		<item>
		<title>Platform specific application installs</title>
		<link>http://deployment.xtremeconsulting.com/2009/10/28/87/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/10/28/87/#comments</comments>
		<pubDate>Wed, 28 Oct 2009 18:30:34 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[MDT 2010]]></category>
		<category><![CDATA[Applications]]></category>
		<category><![CDATA[Lite Touch]]></category>
		<category><![CDATA[MDT]]></category>

		<guid isPermaLink="false">http://deployment.xtremeconsulting.com/?p=87</guid>
		<description><![CDATA[(New for MDT 2010) When adding applications in Microsoft Deployment Toolkit it is possible to associate them with a specific OS or platform. For example, if I wanted to associate an application with “Windows XP – x86 (any service pack version)”, I would select the item in the MDT Management Console, “Properties”, “Details”, “This can [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=87&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><em>(New for MDT 2010)</em></p>
<p>When adding applications in Microsoft Deployment Toolkit it is possible to associate them with a specific OS or platform.</p>
<p>For example, if I wanted to associate an application with “Windows XP – x86 (any service pack version)”, I would select the item in the MDT Management Console, “Properties”, “Details”, “This can run only on the specified client platform:” with the item:</p>
<ul>
<li>All x86 Windows XP</li>
</ul>
<p>When it comes time to install the application using ZTIApplications.wsf, the script will look up “All x86 Windows XP” in the file ZTISupportedPlatforms.xml and query the local machine using WMI Query Language (WQL):</p>
<pre>SELECT * FROM Win32_OperatingSystem
WHERE BuildNumber = '2600' AND OSType=18
SELECT * FROM Win32_Processor
WHERE Architecture=0</pre>
<p>In MDT 2008, if we wanted to have an application work on all x86 platforms, and *only* x86, then we would need to select more than one platform.</p>
<ul>
<li>All x86 NT</li>
<li>All x86 Windows 2000</li>
<li>All x86 Windows XP</li>
<li>All x86 Windows Server 2003</li>
<li>All x86 Windows Server 2003 R2</li>
<li>All x86 Windows Vista</li>
<li>All x86 Windows 7 Client</li>
<li>All x86 Windows Server 2008</li>
<li>All x86 Windows Server 2008 R2</li>
</ul>
<p>This became a bit of a pain when a new version of windows came along like Windows 7, and I wondered what would happen when Windows 8 came out. Would we need to change our definitions, yet again? The answer was yes.</p>
<p>This was made more complex by the limitations of the WMI provider we use to determine if an OS is x86 or x64, they are different for Windows 5.0 vs Windows 6.0. So there is no way we could create a single entry for “<strong>All x86</strong>” or “<strong>All x64</strong>”.</p>
<p>So for Microsoft Deployment Toolkit 2010, we created four new entries that are <em>mostly</em> OS version agnostic.</p>
<ul>
<li>All x86 Pre-Vista</li>
<li>All x86 Vista and Newer</li>
<li>All x64 Pre-Vista</li>
<li>All x64 Vista and Newer</li>
</ul>
<p>Including “<strong>All x86 Pre-Vista</strong>” and “<strong>All x86 Vista and Newer</strong>” in the property page of your Application will ensure that it won’t be installed on a x86 OS.</p>
<p>Keith</p>
<address><a href="http://keithga.com"><span style="color:#993300;">Keith Garner</span></a><span style="color:#993300;"> is a Deployment Specialist with </span><a href="http://deployment.xtremeconsulting.com/"><span style="color:#993300;">Xtreme Consulting Group</span></a></address>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/87/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/87/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/87/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/87/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/87/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/87/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/87/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/87/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/87/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/87/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/87/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/87/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/87/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/87/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=87&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/10/28/87/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>
	</item>
		<item>
		<title>MDT 2010 and Windows Recovery (WinRE)</title>
		<link>http://deployment.xtremeconsulting.com/2009/10/27/mdt-2010-and-windows-recovery-winre/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/10/27/mdt-2010-and-windows-recovery-winre/#comments</comments>
		<pubDate>Tue, 27 Oct 2009 17:00:18 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[MDT 2010]]></category>

		<guid isPermaLink="false">http://deployment.xtremeconsulting.com/?p=75</guid>
		<description><![CDATA[(New for MDT 2010) Windows Recovery Environment (WinRE) is a set of tools included in Windows Vista, Windows Server 2008, Windows 7, and Windows Server 2008 R2. It can help diagnose and recover from errors that prevent Windows from booting successfully. It’s the modern equivalent of repair tools like “fixmbr”. Typically WinRE works along side [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=75&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><em>(New for MDT 2010)</em></p>
<p>Windows Recovery Environment (WinRE) is a set of tools included in Windows Vista, Windows Server 2008, Windows 7, and Windows Server 2008 R2. It can help diagnose and recover from errors that prevent Windows from booting successfully. It’s the modern equivalent of repair tools like “fixmbr”.</p>
<p><img src="http://upload.wikimedia.org/wikipedia/en/4/42/Windows_Vista_System_Recovery.png" alt="" /></p>
<p>Typically WinRE works along side of WinPE. There is no need to install it into a functioning OS, if you can get to a functioning OS, then there is typically nothing to recover.</p>
<p>Back in BDD 2007, we added code to the BDD Welcome Wizard to display a link to the WinRE tools if they were installed on the image. However for some reason, WinRE support was yanked from the WAIK, so most people could never install WinRE into their BDD/MDT Litetouch boot images.</p>
<h3>Changes for MDT 2010</h3>
<p>New for MDT 2010, when building a new Litetouch WinPE WIM (Update Deployment), if MDT detects the presence of Windows 7/Windows Server 2008 R2 in the workbench, then it will leverage the boot.wim file from those directories, which is great since these boot.wim files contain the WinRE bits. This is a change from MDT 2008, where the Litetouch.wim boot file comes directly from the WAIK.</p>
<p>If you have a pre-existing delivery mechanism for distributing Litetouch Images in your company, like PXE, USB Flash, or DVD, you now automatically have a boot recovery method, since WinRE is automatically included in the litetouch WinPE Boot wim.</p>
<p>It is possible to add WinRE to the local machine for recovery, however chances are that if your client machines are having problems booting to the OS, either they have bad hardware (not fixable by WinRE), or their boot environment is messed up enough that booting to WinRE off the local hard disk is also not an option. Having WinRE available over the network via PXE boot is typically good enough.</p>
<p>Keith</p>
<address><a href="http://keithga.com"><span style="color:#993300;">Keith Garner</span></a><span style="color:#993300;"> is a Deployment Specialist with </span><a href="http://deployment.xtremeconsulting.com/"><span style="color:#993300;">Xtreme Consulting Group</span></a></address>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/75/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/75/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/75/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/75/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/75/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/75/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/75/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/75/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/75/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/75/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/75/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/75/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/75/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/75/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=75&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/10/27/mdt-2010-and-windows-recovery-winre/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>

		<media:content url="http://upload.wikimedia.org/wikipedia/en/4/42/Windows_Vista_System_Recovery.png" medium="image" />
	</item>
		<item>
		<title>Securing your installation of Litetouch MDT</title>
		<link>http://deployment.xtremeconsulting.com/2009/10/27/securing-your-installation-of-litetouch-mdt/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/10/27/securing-your-installation-of-litetouch-mdt/#comments</comments>
		<pubDate>Tue, 27 Oct 2009 15:00:05 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[MDT 2010]]></category>
		<category><![CDATA[Lite Touch]]></category>
		<category><![CDATA[MDT]]></category>
		<category><![CDATA[Security]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/?p=38</guid>
		<description><![CDATA[There are several instances during the litetouch deployment process where sensitive pieces of information are stored and retrieved as plaintext. The most common example of this is the Administrator Password. The Administrator Password is typically gathered by the Deployment Wizard, stored locally in the c:\MININT\SMSOSD\OSDLOGS\VARIABLES.DAT file, and later set by ZTIConfigure.wsf and Litetouch.wsf. I would [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=38&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>There are several instances during the litetouch deployment process where sensitive pieces of information are stored and retrieved as plaintext. The most common example of this is the Administrator Password.</p>
<p>The Administrator Password is typically gathered by the Deployment Wizard, stored locally in the c:\MININT\SMSOSD\OSDLOGS\VARIABLES.DAT file, and later set by ZTIConfigure.wsf and Litetouch.wsf.</p>
<p>I would be great if this data was encrypted during installation, however, that is not possible in all instances. The Administrator Password, for example, must be available as plaintext (unencrypted) for AutoLogon to work. And Windows AutoLogon does not itself encrypt the Administrator Password.</p>
<p>For MDT 2010, we added a new feature that obfuscates critical data in the variables.dat file using the same obfuscation method used by Windows in the Windows System Image Manager found in the WAIK. This data is not 100% secure, I know the method used to obfuscate the data, and I can easily read the information, however most users can’t. (Can you guess the algorithm? Don’t tell anyone :^)).</p>
<p>In most scenarios though, this shouldn’t be a problem. The user will type in a local password, the scripts will save the information locally, but the data is purged at the end of the Litetouch Deployment process.</p>
<p>There are ways that we *can* help protect sensitive information like the Administrator Password if required. One possible way is to get the user to input a “Less Secure” Administrator password at the start of the installation process. We can then inject at the end of the Litetouch deployment process a new step to auto-expire the administrator account’s password. Then the next time a user logs into the administrator’s account, they will be forced to change the password.</p>
<p>Forcing the user to change the password at the end of the Litetouch process has another advantage. When we start the Litetouch installation process for an OS (new computer), we are not joined to a domain. Meaning any Local Administrator Password complexity policies are not applied. If we force the user to change the password at the end of the install process, after the machine has been auto-joined to a domain, then we can enforce any Complexity Requirements required by the domain.</p>
<p>Keith</p>
<address><a href="http://keithga.com"><span style="color:#993300;">Keith Garner</span></a><span style="color:#993300;"> is a Deployment Specialist with </span><a href="http://deployment.xtremeconsulting.com/"><span style="color:#993300;">Xtreme Consulting Group</span></a></address>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/38/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=38&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/10/27/securing-your-installation-of-litetouch-mdt/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>
	</item>
		<item>
		<title>Falling asleep on the job (task)</title>
		<link>http://deployment.xtremeconsulting.com/2009/10/26/falling-asleep-on-the-job-task/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/10/26/falling-asleep-on-the-job-task/#comments</comments>
		<pubDate>Mon, 26 Oct 2009 21:55:55 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[MDT 2010]]></category>
		<category><![CDATA[VBscript]]></category>

		<guid isPermaLink="false">http://deployment.xtremeconsulting.com/?p=70</guid>
		<description><![CDATA[ZZzzzzzz&#8230;&#8230; (New for MDT 2010) One of the new features of Windows 7 is a new aggressive power management policy. For machines that are plugged in, the new “Balanced” default policy will put a machine to sleep in 30 minutes. For Windows Vista, the default was 60 minutes. For Deployments, that’s a problem if you [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=70&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>ZZzzzzzz&#8230;&#8230; <em>(New for MDT 2010)</em></p>
<p>One of the new features of Windows 7 is a new aggressive power management policy. For machines that are plugged in, the new “Balanced” default policy will put a machine to sleep in 30 minutes. For Windows Vista, the default was 60 minutes.</p>
<p>For Deployments, that’s a problem if you have application installs that take longer than 30 minutes, like Microsoft Office 2007, with all the service packs. Half way through the deployment, the install pauses because the machine went to sleep.</p>
<p>I first noticed this in early tests of the Microsoft Deployment Toolkit 2010. I had written a utility for a similar problem back when I worked for Microsoft IT. It uses a Win32 API call:  <a href="http://msdn.microsoft.com/en-us/library/aa373233(VS.85).aspx">Win32 SetThreadExecutionState</a>()</p>
<p>It’s a simple C/C++ call:</p>
<pre>SetThreadExecutionState( ES_CONTINUOUS | ES_SYSTEM_REQUIRED );</pre>
<p>This command resets the idle timer of the OS, and forces the machine to stay in a state while the Litetouch Task Sequence is running.</p>
<p><strong>Updated (11/3/09):</strong></p>
<p>KeepAlive was added to MDT 2010 in the Microsoft.BDD.Utility.dll file, you can see it being called in the litetouch.wsf script:</p>
<pre>' Ensure that this machine does *not* go to sleep while running the task sequence steps.
On error resume next
<strong>oUtility.BDDUtility.KeepAlive</strong>
On error goto 0</pre>
<p>Keith</p>
<address><a href="http://keithga.com"><span style="color:#993300;">Keith Garner</span></a><span style="color:#993300;"> is a Deployment Specialist with </span><a href="http://deployment.xtremeconsulting.com/"><span style="color:#993300;">Xtreme Consulting Group</span></a></address>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/70/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/70/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/70/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/70/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/70/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/70/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/70/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/70/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/70/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/70/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/70/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/70/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/70/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/70/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=70&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/10/26/falling-asleep-on-the-job-task/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>
	</item>
		<item>
		<title>Litetouch Folder Permissions</title>
		<link>http://deployment.xtremeconsulting.com/2009/10/26/litetouch-folder-permissions/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/10/26/litetouch-folder-permissions/#comments</comments>
		<pubDate>Mon, 26 Oct 2009 15:00:38 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[MDT 2010]]></category>
		<category><![CDATA[Lite Touch]]></category>
		<category><![CDATA[MDT]]></category>
		<category><![CDATA[Permissions]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/?p=44</guid>
		<description><![CDATA[I was looking the other day at the permissions of my MDT deployment share, wondering if I had the optimal settings for security and flexibility (typically security and flexibility to *not* go together… ). So I did some digging, and came up with a solution that works well for my Litetouch deployment, and thought I’d [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=44&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I was looking the other day at the permissions of my MDT deployment share, wondering if I had the optimal settings for security and flexibility (typically security and flexibility to *not* go together… ). So I did some digging, and came up with a solution that works well for my Litetouch deployment, and thought I’d share.</p>
<h3>SDDL</h3>
<p>When dealing with Security Permissions, I had to dig down into the details of Security Descriptors and Security Descriptor Definition Language Strings.</p>
<p>For a good tutorial about Security Descriptor Definition Language Strings (SDDL), go here:</p>
<p><a href="http://www.washington.edu/computing/support/windows/UWdomains/SDDL.html">http://www.washington.edu/computing/support/windows/UWdomains/SDDL.html</a></p>
<p>The advantage of SDDL strings is that they provide a good portable way to define and apply settings. You can use the cacls.exe tool included in Windows, for example to apply security strings to an existing folder.</p>
<p align="left"><code>cacls c:\DeploymentShare\LogFiles /s:"D:PAI(A;OICI;FA;;;SY)(A;OICI;FA;;;BA)(A;OICIIO;FA;;;CO)(A;;0x100004;;;AU)" </code></p>
<h3>1 – Share Security</h3>
<p>\\&lt;server&gt;\DeploymentShare$</p>
<p>For the primary Distribution share, just set the folder to Everyone: Full. Unless all operations to the share are read only, then Everyone: read.</p>
<p>Reasoning: NTFS Security really is more robust and granular than Share level security, so it’s better to just  skip share level security.</p>
<h3>2 – Most Read/Only Folders</h3>
<p>\\&lt;server&gt;\DeploymentShare$\[Applicaitons,Packages,etc…]</p>
<p align="left">For most folders under \\server\distribution$, the permissions will be like:</p>
<p align="left"><code>SDDL: D:PAI(A;OICI;FA;;;SY)(A;OICI;FA;;;BA)(A;OICI;0x1200a9;;;AU)</code></p>
<ul>
<li>Allow “NT AUTHORITY\SYSTEM” Full Control, This folder, subfolders, and files.</li>
<li>Allow “BUILTIN\Administrators” Full Control, This folder, subfolders, and files.</li>
<li><strong>Allow “NT AUTHORITY\Authenticated Users” Read &amp; Execute, This folder, subfolders, and files. </strong></li>
</ul>
<p>This is basic stuff, and will allow administrators to perform basic maintenance, yet prevent normal users from accidently modifying files.</p>
<h3>3 – Most Write Only Folders</h3>
<p>\\&lt;server&gt;\DeploymentShare$\[LogFiles,MigData,Captures]</p>
<p>This could be things like Log files, user backups, computer backups, USMT Migration files, Bitlocker Keys?, etc… Folders where users/machines may need to write to the Distribution machine (or any other share):</p>
<p align="left"><code>SDDL: D:PAI(A;OICI;FA;;;SY)(A;OICI;FA;;;BA)(A;OICIIO;FA;;;CO)(A;;0x100004;;;AU) </code></p>
<ul>
<li>Allow “NT AUTHORITY\SYSTEM” Full Control, This folder, subfolders, and files.</li>
<li>Allow “BUILTIN\Administrators” Full Control, This folder, subfolders, and files.</li>
<li><strong>Allow “CREATOR OWNER” Full Control, Subfolders, and files only. </strong></li>
<li><strong>Allow “NT AUTHORITY\Authenticated Users” Create folders / append data, This folder only.</strong></li>
</ul>
<p>Again, this will Administrators the ability to perform all basic maintenance tasks.</p>
<p>The last entry “<strong>Allow “NT AUTHORITY\Authenticated Users” Create folders / append data, This folder only.</strong>” allows users to create subfolders freely, however it does not give anyone the right to read or write to other folders.</p>
<p>Once a user has created the folder they are the Creator Owner, and the 3rd entry: “<strong>Allow “CREATOR OWNER” Full Control, Subfolders, and files only.</strong>” allows users to write to the directory they created, and only that directory.</p>
<p>It’s a way that we can allow anyone to write to the MDT Distribution share, without allowing them any access to other users folders. This is great in scenarios like User State Migration, where we wish to save a users state to a common public location, yet don’t wish to allow other users the ability to read those possibly sensitive files.</p>
<p>Please let me know if you have any good ideas about securing files for your deployments.</p>
<p>Keith</p>
<address><a href="http://keithga.com"><span style="color:#993300;">Keith Garner</span></a><span style="color:#993300;"> is a Deployment Specialist with </span><a href="http://deployment.xtremeconsulting.com/"><span style="color:#993300;">Xtreme Consulting Group</span></a></address>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/44/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=44&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/10/26/litetouch-folder-permissions/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>
	</item>
		<item>
		<title>When things go wrong during MDT Deployment (Part 3)</title>
		<link>http://deployment.xtremeconsulting.com/2009/10/24/when-things-go-wrong-during-mdt-deployment-part-3/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/10/24/when-things-go-wrong-during-mdt-deployment-part-3/#comments</comments>
		<pubDate>Sat, 24 Oct 2009 07:00:47 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[MDT 2010]]></category>
		<category><![CDATA[Troubleshooting]]></category>
		<category><![CDATA[Lite Touch]]></category>
		<category><![CDATA[Logs]]></category>
		<category><![CDATA[MDT]]></category>
		<category><![CDATA[Trobleshooting]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/?p=37</guid>
		<description><![CDATA[Reading the files… Microsoft Deployment Toolkit 2010 writes log files to the bdd.log file in a standardized format use by the SMS team. This log file format looks like XML. Example: &#60;![LOG[Property debug is now = TRUE]LOG]!&#62; &#60;time="00:19:03.000+000" date="10-15-2009" component="ZTIWindowsUpdate" context="" type="1" thread="" file="ZTIWindowsUpdate"&#62; As you can see, that’s a lot of text to just [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=37&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Reading the files…</p>
<p>Microsoft Deployment Toolkit 2010 writes log files to the bdd.log file in a standardized format use by the SMS team. This log file format looks like XML.</p>
<p>Example:</p>
<pre>&lt;![LOG[Property debug is now = TRUE]LOG]!&gt;
&lt;time="00:19:03.000+000" date="10-15-2009" 
component="ZTIWindowsUpdate" context="" 
type="1" thread="" file="ZTIWindowsUpdate"&gt;</pre>
<p>As you can see, that’s a lot of text to just write out: “Property debug is now = TRUE”.</p>
<p>To assist in reading these log files, I use the trace32.exe program written by Microsoft. You can download this program for free at Microsoft as part of the: “System Center Configuration Manager 2007 Toolkit” This program displays MDT log files in a easy to read format.</p>
<p>Another cool feature of trace32.exe is that it does a good job of monitoring changes to the log files when being written to. You can see the changes being performed in real time within trace32.exe.</p>
<p>Link: <a title="http://www.microsoft.com/downloads/details.aspx?FamilyID=948e477e-fd3b-4a09-9015-141683c7ad5f&amp;DisplayLang=en" href="http://www.microsoft.com/downloads/details.aspx?FamilyID=948e477e-fd3b-4a09-9015-141683c7ad5f&amp;DisplayLang=en">http://www.microsoft.com/downloads/details.aspx?FamilyID=948e477e-fd3b-4a09-9015-141683c7ad5f&amp;DisplayLang=en</a></p>
<p><em>(<strong>Updated</strong>: 10/26/09 to fix formatting)</em></p>
<p>Keith</p>
<address><a href="http://keithga.com"><span style="color:#993300;">Keith Garner</span></a><span style="color:#993300;"> is a Deployment Specialist with </span><a href="http://deployment.xtremeconsulting.com/"><span style="color:#993300;">Xtreme Consulting Group</span></a></address>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/37/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=37&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/10/24/when-things-go-wrong-during-mdt-deployment-part-3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>
	</item>
		<item>
		<title>When Things go wrong during MDT Deployment (Part 2)</title>
		<link>http://deployment.xtremeconsulting.com/2009/10/23/when-things-go-wrong-during-mdt-deployment-part-2/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/10/23/when-things-go-wrong-during-mdt-deployment-part-2/#comments</comments>
		<pubDate>Fri, 23 Oct 2009 22:17:04 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[MDT 2010]]></category>
		<category><![CDATA[Troubleshooting]]></category>
		<category><![CDATA[Logs]]></category>
		<category><![CDATA[MDT]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/?p=36</guid>
		<description><![CDATA[Other Log files… In a continuation of my last post on debugging Litetouch failures by viewing the bdd.log file. Let me also discuss some of the *other* log files that may appear during a Litetouch Deployment. During WinPE bootup, there may be problems with the WinPE itself, for example the network driver may fail to [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=36&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Other Log files…</p>
<p>In a continuation of my last post on debugging Litetouch failures by viewing the bdd.log file. Let me also discuss some of the *other* log files that may appear during a Litetouch Deployment.</p>
<ul>
<li>During WinPE bootup, there may be problems with the WinPE itself, for example the network driver may fail to load. Look in x:\windows\system32\WPEInit.log, for details</li>
<li>During Windows Vista and Windows 7 setup, any setup errors should be logged in the panther directory. A good description of these files, and where they are located can be found here: <a href="http://support.microsoft.com/kb/927521">http://support.microsoft.com/kb/927521</a>.</li>
<li>When performing a domain join, Windows will write logging information to: c:\windows\debug\netsetup.log.</li>
<li>During a State Capture and State Restore (USMT), MDT will write to the standard MDT log file locations to the files: USMTEstimate.log, USMTCapture.log, USMTRestore.log.</li>
<li>Finally, in Litetouch scenarios, when processing the tasks defined in the task sequence list, the SCCM Stand Alone Task Sequencer will write to a file called smsts.log. Typically this file is located at %Temp%\smsts.log. However, you can also tell by searching within the bdd.log file. If Litetouch sees where the smsts.log file is located then it will log the path. Just search for smsts.log. Also, when complete, Litetouch will archive the smsts.log file to the c:\windows\temp\deploymentlogs\smsts.log location like bdd.log.</li>
</ul>
<p>Keith</p>
<address><a href="http://keithga.com"><span style="color:#993300;">Keith Garner</span></a><span style="color:#993300;"> is a Deployment Specialist with </span><a href="http://deployment.xtremeconsulting.com/"><span style="color:#993300;">Xtreme Consulting Group</span></a></address>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/36/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/36/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/36/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/36/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/36/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/36/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/36/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/36/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/36/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/36/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/36/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/36/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/36/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/36/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=36&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/10/23/when-things-go-wrong-during-mdt-deployment-part-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>
	</item>
		<item>
		<title>When things go wrong during MDT Deployment (Part 1)</title>
		<link>http://deployment.xtremeconsulting.com/2009/10/23/when-things-go-wrong-during-mdt-deployment-part-1/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/10/23/when-things-go-wrong-during-mdt-deployment-part-1/#comments</comments>
		<pubDate>Fri, 23 Oct 2009 22:15:21 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[MDT 2010]]></category>
		<category><![CDATA[Troubleshooting]]></category>
		<category><![CDATA[Logs]]></category>
		<category><![CDATA[MDT]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/?p=35</guid>
		<description><![CDATA[Occasionally, things do go wrong during MDT deployment. Most of the time the best place to start looking is the Bdd.log file. While on the MDT development team, we tried hard to ensure that the client scripts wrote to the logs frequently, so we could debug problems later with minimal effort. Typically each script will [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=35&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p align="left">Occasionally, things do go wrong during MDT deployment.</p>
<p align="left">Most of the time the best place to start looking is the Bdd.log file. While on the MDT development team, we tried hard to ensure that the client scripts wrote to the logs frequently, so we could debug problems later with minimal effort.</p>
<p align="left">Typically each script will write out to a corresponding log file *and* to bdd.log. So for example if you were running the ZTIWindowsUpdate.wsf script, that script would write out to ZTIWindowsUpdate.log *and* bdd.log.</p>
<p align="left">MDT Litetouch log files are written to a common location, bdd.log. This log file is located typically in one of the following locations:</p>
<ul>
<li>
<div>If you are running from a WinPE boot disk, and the local machine does not yet have any partitions defined, typically the logs are located on the WinPE Disk: x:\MININT\SMSOSD\OSDLOGS\bdd.log.</div>
</li>
<li>
<div>After the main hard disk partition on the client machine has been created, MDT will start logging to the local c: drive at: c:\MININT\SMSOSD\OSDLOGS\bdd.log. Typically, during scenarios when we are not installing an OS from scratch, this is the default location for Log files. For example if we are running a Task Sequence that is installing a set of applications only.</div>
</li>
<li>
<div>When the entire Litetouch process is finished, MDT will archive the contents of the logs to c:\windows\temp\depoymentlogs\bdd.log.</div>
</li>
<li>
<div>Also if you have the variable SLShare defined, when the Litetouch Process is finished, MDT will archive the contents of the log to that share. For example: SLSHARE=%DeployRoot%\BDDLogs.</div>
</li>
</ul>
<p>There is a new property I created for MDT 2010, called SLShareDynamicLogging. For example: SLShareDynamicLogging = \\MyServer\PublicWriteShare\MDTLogs\. This property will write debugging information to the network share defined in addition to c:\MININT\SMSOSD\OSDLOGS. Please be aware that MDT 2010 writes a *lot* of debugging information to the log, and adding another logging destination will slow down MDT. I recommend using it only in advanced debugging scenarios when you can’t access the log files on the client machine.</p>
<p>Keith</p>
<address><a href="http://keithga.com"><span style="color:#993300;">Keith Garner</span></a><span style="color:#993300;"> is a Deployment Specialist with </span><a href="http://deployment.xtremeconsulting.com/"><span style="color:#993300;">Xtreme Consulting Group</span></a></address>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/35/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/35/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/35/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/35/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/35/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/35/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/35/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/35/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/35/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/35/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/35/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/35/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/35/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/35/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=35&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/10/23/when-things-go-wrong-during-mdt-deployment-part-1/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>
	</item>
		<item>
		<title>Tim Mintner to speak at the Central Texas Systems Management User Group</title>
		<link>http://deployment.xtremeconsulting.com/2009/10/23/tim-mintner-to-speak-at-the-central-texas-systems-management-user-group/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/10/23/tim-mintner-to-speak-at-the-central-texas-systems-management-user-group/#comments</comments>
		<pubDate>Fri, 23 Oct 2009 21:58:37 +0000</pubDate>
		<dc:creator>tmintner</dc:creator>
				<category><![CDATA[Announcements]]></category>
		<category><![CDATA[Speaking Engagements]]></category>

		<guid isPermaLink="false">http://deployment.xtremeconsulting.com/?p=31</guid>
		<description><![CDATA[Tim Mintner will be speaking on the Microsoft Deployment Toolkit (MDT) 2010 on Friday, November 13 in Austin, Texas at the Central Texas Systems Management User Group (CTSMUG).  Don&#8217;t miss this opportunity to get a free training class on MDT 2010. Here is the agenda for the day: Agenda: 9:30 – 10:00 Welcome and Coffee [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=31&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Tim Mintner will be speaking on the Microsoft Deployment Toolkit (MDT) 2010 on Friday, November 13 in Austin, Texas at the Central Texas Systems Management User Group (<a href="http://myitforum.com/cs2/blogs/ctsmug/default.aspx" target="_blank">CTSMUG</a>).  Don&#8217;t miss this opportunity to get a free training class on MDT 2010.</p>
<p>Here is the agenda for the day:</p>
<p>Agenda:</p>
<p>9:30 – 10:00 Welcome and Coffee<br />
10:00 – 11:30 MDT 2010 &#8211; Intro and Intermediate</p>
<p>11:30- 12:30 Lunch<br />
12:30 – 3:30 MDT 2010 &#8211; Advanced, and MDT Extensions for ConfigMgr<br />
3:30 &#8211; Post-Meeting Social at Dave and Busters</p>
<p><a href="https://www.clicktoattend.com/invitation.aspx?code=142248">Register early!</a> This meeting may be a sell-out!</p>
<p><a href="http://maps.live.com/OneClickDirections.aspx?rtp=%7epos.p1xsyf6vnsyf_9606+N+Mo+Pac+Expy%2c+Austin%2c+TX+78759-5932___a_&amp;rsd=30.4074203968048_-97.6748487353325_Ab4HDiAOAAAAaMyNAAcAAAA%3d_the+north+(via+I-35+S+%2f+US-81+S)%7e30.3204792737961_-97.6665687561035_Ab4HDiAOAAAAasyNABwAAAA%3d_the+south+(via+Ed+Bluestein+Blvd+N+%2f+US-183)%7e30.319199860096_-97.8200393915176_Ab4HDiAOAAAAP8yNABsAAAA%3d_the+south+(via+N+Capital+of+Texas+Hwy+%2f+SR-360+Loop+N)%7e30.3271713852882_-97.6690497994423_Ab4HDiAOAAAAaMyNAIsHAAA%3d_the+east+(via+US-290+W)&amp;mkt=en-us&amp;FORM=LLMP">Directions</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/31/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/31/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/31/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/31/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/31/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/31/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/31/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/31/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/31/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/31/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/31/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/31/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/31/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/31/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=31&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/10/23/tim-mintner-to-speak-at-the-central-texas-systems-management-user-group/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/240858a50784c41cedfbc35048e21064?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">tmintner</media:title>
		</media:content>
	</item>
		<item>
		<title>Announcement: Xtreme Consulting Deployment Team!</title>
		<link>http://deployment.xtremeconsulting.com/2009/10/23/announcement-xtreme-consulting-deployment-team/</link>
		<comments>http://deployment.xtremeconsulting.com/2009/10/23/announcement-xtreme-consulting-deployment-team/#comments</comments>
		<pubDate>Fri, 23 Oct 2009 21:35:00 +0000</pubDate>
		<dc:creator>keithga</dc:creator>
				<category><![CDATA[Announcements]]></category>

		<guid isPermaLink="false">http://tmintner.wordpress.com/?p=8</guid>
		<description><![CDATA[Welcome to Xtreme Deployment!  We will be posting technical blog posts on OS Deployment using Microsoft technologies such as MDT 2010 and System Center Configuration Manager 2007.  Check back often for updates! Xtreme Consulting Group is pleased to announce the formation of the Xtreme Consulting Deployment Team. A team within Xtreme Consulting Group, specializing in Windows [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=8&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Welcome to Xtreme Deployment!  We will be posting technical blog posts on OS Deployment using Microsoft technologies such as MDT 2010 and System Center Configuration Manager 2007.  Check back often for updates!</p>
<p><a href="http://xtremeconsulting.com" target="_blank">Xtreme Consulting Group</a> is pleased to announce the formation of the Xtreme Consulting Deployment Team. A team within Xtreme Consulting Group, specializing in Windows Deployments.</p>
<p>Several Members of the Xtreme Consulting Deployment Team have recently come off an engagement with the Microsoft team that developed the <a href="http://microsoft.com/deployment">Microsoft Deployment Toolkit 2010</a>.</p>
<p>The Microsoft Deployment Toolkit (MDT) 2010 is the latest version of the critically acclaimed deployment software for the Windows Operating System. Microsoft Deployment Toolkit is the de-facto reference design for deployments of Windows Operating Systems and Applications.</p>
<p>The Xtreme Consulting Deployment Team has been formed to fill a critical need for experts in Windows Deployment. Whether are preparing your first deployment system, or need help developing customized scripts or enhancements for your existing system. Xreme Consulting&#8217;s Deployment Team is resource you need.</p>
<p>The formation of the Xtreme Consulting Deployment Team comes at the same time as Microsoft is releasing their new flagship product Windows 7. With the release of Windows 7, more and more companies are evaluating their internal desktop platform requirements, and looking into methods and scripts to deploy this new operating system.</p>
<p>Here are a few of the members on the team:</p>
<ul>
<li>Tim Mintner &#8211; Tim Mintner has over fifteen years consulting experience with many of the largest companies in the world on Systems Management and Operating System Deployment.  Most recently, Tim was a Senior Software Development Engineer for Microsoft on the Microsoft Deployment Toolkit and helped ship six versions of MDT that have been downloaded by over 300,000 customers worldwide.  Tim has been an author for Technet Magazine and is a highly rated speaker at Microsoft events such as the Microsoft Management Summit and Microsoft TechEd.  Tim is actively involved in the Systems Management and OS Deployment community and has been recognized as a Microsoft Most Valued Professional for his efforts with User Groups and online communities.</li>
<li>Keith Garner - Keith Garner has been working in the Puget Sound region at the Microsoft Corporate Headquarters as a Software Developer for fifteen years, mostly in the Windows Product Group, and Microsoft IT, specializing in Windows OS Internals, and Deployment. For the past 4 years, Keith has been working as a consultant with Xtreme Consulting Group, working on several Microsoft projects, including BDD/MDT, and most recently MDT 2010.</li>
<li>Polly Reese &#8211; Polly has almost 20 years of industry experience. Responsible for the delivery and engagement management of Microsoft Consulting Services for the Global Deployment practice including pipeline, revenue, utilization, and delivery management of desktop deployment services worldwide.   Provided leadership, evangelism and education to the global Microsoft deployment expert community.</li>
</ul>
<p>Xtreme Consulting Deployment Team is <em><strong>the</strong> </em>resource for your next deployment project. And we have solutions and resources for a wide range of projects.</p>
<ul>
<li>Xtreme Consulting Deployment Team are the experts on MDT 2010. MDT 2010 is the de-facto reference system designed by Microsoft for Windows Deployments in the business environment.</li>
<li>Xtreme Consulting Services has a large library of common deployment tools and systems ready to be droped into your Corporate environment.<br />
In some instances, we can setup a fully functional, common deployment (MDT Litetouch) solution <strong>on site, and in just hours </strong>containing:</p>
<ul>
<li>Windows XP, Windows Vista, Windows 7, Windows Server 2003, <strong>and </strong>Windows Server 2008</li>
<li>Microsoft Office Suite, Microsoft Project, Microsoft Visio, and more&#8230;</li>
<li>PDF Readers, Media Players, Microsoft Silverlight Clients, Anti Virus clients.</li>
<li>Runtime Environments like: .NET Frameworks (all versions), Java Runtimes.</li>
<li>Server tools like: SQL Server, Sharepoint Server.</li>
<li>Development Environments: Visual Studio,</li>
</ul>
</li>
<li>Xtreme Consulting Services has several Subject Matter Experts on the critically aclaimed Microsoft Deployment Toolkit 2010.
<ul>
<li>Custom Scripts, configurations, custom wizard pages, etc&#8230;</li>
<li>Advanced Debugging of complex scenarios, etc..</li>
</ul>
</li>
</ul>
<p>Let Xtreme Consulting Services Deployment Team help you get your IT infrastructure under control.</p>
<p>Xtreme Consulting Group, Inc. is a business and IT services firm that delivers project management and consulting services to help clients reduce costs, enhance organizational flexibility, and improve performance. The company specializes in project/program management, development infrastructure &amp; engineering planned IT, web design &amp; development, and SharePoint portal development. Xtreme Consulting Group operates throughout the US from their corporate offices in Redmond, WA. More information about Xtreme can be found at <a href="http://www.xtremeconsulting.com/">www.xtremeconsulting.com</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tmintner.wordpress.com/8/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tmintner.wordpress.com/8/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tmintner.wordpress.com/8/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tmintner.wordpress.com/8/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tmintner.wordpress.com/8/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tmintner.wordpress.com/8/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tmintner.wordpress.com/8/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tmintner.wordpress.com/8/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tmintner.wordpress.com/8/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tmintner.wordpress.com/8/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tmintner.wordpress.com/8/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tmintner.wordpress.com/8/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tmintner.wordpress.com/8/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tmintner.wordpress.com/8/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=deployment.xtremeconsulting.com&#038;blog=9840217&#038;post=8&#038;subd=tmintner&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://deployment.xtremeconsulting.com/2009/10/23/announcement-xtreme-consulting-deployment-team/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ba37c28620c8ba69ccbbfad7a905e203?s=96&#38;d=http%3A%2F%2Fs0.wp.com%2Fi%2Fmu.gif&#38;r=G" medium="image">
			<media:title type="html">keithga</media:title>
		</media:content>
	</item>
	</channel>
</rss>
