<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.technet.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Confessions of a Microsoft Consultant : Microsoft Deployment Toolkit</title><link>http://blogs.technet.com/doxley/archive/tags/Microsoft+Deployment+Toolkit/default.aspx</link><description>Tags: Microsoft Deployment Toolkit</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>Updating your deployment point programmatically</title><link>http://blogs.technet.com/doxley/archive/2008/01/08/updating-your-deployment-point-programmatically.aspx</link><pubDate>Tue, 08 Jan 2008 16:17:57 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:2723317</guid><dc:creator>Daniel Oxley</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.technet.com/doxley/comments/2723317.aspx</comments><wfw:commentRss>http://blogs.technet.com/doxley/commentrss.aspx?PostID=2723317</wfw:commentRss><description>&lt;p&gt;I was asked recently if it was possible to launch an &amp;quot;Update&amp;quot; and/or an &amp;quot;Update (files only)&amp;quot; in MDT via a script as my client did not want to open the MMC console just to update their Distribution Point.&amp;#160; Well, yes it is possible and here you have a PowerShell script that does it!&lt;/p&gt;  &lt;p&gt;You'll need to have the .NET Framework, WAIK and PowerShell installed on the computer you plan to run these scripts.&amp;#160; Also, you'll need to modify the scripts to add the correct path of the loaded assemblies.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;font color="#0000ff"&gt;[System.Reflection.Assembly]::LoadFrom(&amp;quot;C:\Program Files\Microsoft Deployment Toolkit\Bin\Microsoft.BDD.ConfigManager.dll&amp;quot;)        &lt;br /&gt;[System.Reflection.Assembly]::LoadFrom(&amp;quot;C:\Program Files\Windows AIK\Tools\Image Manager\Microsoft.ComponentStudio.Common.dll&amp;quot;)         &lt;br /&gt;[System.Reflection.Assembly]::LoadFrom(&amp;quot;C:\Program Files\Windows AIK\Tools\Image Manager\Microsoft.ComponentStudio.ComponentPlatformImplementation.dll&amp;quot;)         &lt;br /&gt;[System.Reflection.Assembly]::LoadFrom(&amp;quot;C:\Program Files\Windows AIK\Tools\Image Manager\Microsoft.ComponentStudio.ComponentPlatformInterface.dll&amp;quot;)         &lt;br /&gt;[System.Reflection.Assembly]::LoadFrom(&amp;quot;C:\Program Files\Windows AIK\Tools\Image Manager\Microsoft.ComponentStudio.Serializer.dll&amp;quot;) &lt;/font&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;font color="#0000ff"&gt;$manager = [Microsoft.BDD.ConfigManager.Manager]        &lt;br /&gt;$Deploymanager = $manager::Deploymanager         &lt;br /&gt;$newItem = $Deploymanager[&amp;quot;&lt;strong&gt;&amp;lt;Place your DP GUID Here&amp;gt;&lt;/strong&gt;&amp;quot;]         &lt;br /&gt;$newItem.Generate(&amp;quot;x86&amp;quot;, &amp;quot;c:\temp\logupdate.log&amp;#8221;, $false)&lt;/font&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;In order to retrieve the GUID of your Deployment Point you can use the following script, and then add the GUID returned to the script above.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;font color="#0000ff"&gt;[System.Reflection.Assembly]::LoadFile(&amp;quot;C:\Program Files\Microsoft Deployment Toolkit\Bin\Microsoft.BDD.ConfigManager.dll&amp;quot;)        &lt;br /&gt;$manager = [Microsoft.BDD.ConfigManager.Manager] &lt;/font&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;font color="#0000ff"&gt;$manager::InstallPath        &lt;br /&gt;$manager::WaikPath         &lt;br /&gt;$manager::TempPath &lt;/font&gt;&lt;/p&gt;    &lt;p&gt;&lt;font color="#0000ff"&gt;write-host &amp;quot;Deploy:&amp;quot;        &lt;br /&gt;$manager::DeployManager.GetDataTable()&lt;/font&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;If you want to update only the configuration files, make sure to change the following line to:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;font color="#0000ff"&gt;$newItem.Generate(&amp;quot;x86&amp;quot;, &amp;quot;c:\temp\logupdate.log&amp;#8221;, &lt;strong&gt;$true&lt;/strong&gt;)&lt;/font&gt;&lt;/p&gt;    &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;When the last parameter is set to &lt;strong&gt;$false&lt;/strong&gt; the script will update all files, whereas if it is set to &lt;strong&gt;$true&lt;/strong&gt; the script will update only the configuration files.&amp;#160; It goes without saying that this is not an official script of MDT, nor Microsoft, so use it at your own risk!&lt;/p&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=2723317" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/doxley/archive/tags/Microsoft+Deployment+Toolkit/default.aspx">Microsoft Deployment Toolkit</category><category domain="http://blogs.technet.com/doxley/archive/tags/Scripting/default.aspx">Scripting</category></item><item><title>Bad news and good news in the BBD/MDT world</title><link>http://blogs.technet.com/doxley/archive/2008/01/03/good-news-and-bad-news-in-the-bbd-mdt-world.aspx</link><pubDate>Thu, 03 Jan 2008 16:14:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:2706172</guid><dc:creator>Daniel Oxley</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.technet.com/doxley/comments/2706172.aspx</comments><wfw:commentRss>http://blogs.technet.com/doxley/commentrss.aspx?PostID=2706172</wfw:commentRss><description>&lt;P&gt;I have some bad news and good news to share about the world of Microsoft deployment, gasp!&lt;/P&gt;
&lt;P&gt;The bad news is that the BDD gurus Ben Hunter and Richard Smith (amongst many others) are planning on discontinuing their blogs.&amp;nbsp; The good news is that they are combining their efforts along with all the other top top people in the Microsoft deployment community by creating one central blog!&lt;/P&gt;
&lt;P&gt;Go see it at &lt;A href="http://blogs.technet.com/deploymentguys" mce_href="http://blogs.technet.com/deploymentguys"&gt;http://blogs.technet.com/deploymentguys&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;This is excellent news!&amp;nbsp; The writers of the new blog represent 6 different countries around the world so it should bring some amazing and varied experiences, tips and tricks to share with everyone.&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=2706172" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/doxley/archive/tags/Business+Desktop+Deployment/default.aspx">Business Desktop Deployment</category><category domain="http://blogs.technet.com/doxley/archive/tags/Microsoft+Deployment+Toolkit/default.aspx">Microsoft Deployment Toolkit</category></item><item><title>Editing the registry of your WIM without having to recapture</title><link>http://blogs.technet.com/doxley/archive/2007/12/13/editing-the-registry-of-your-wim-without-having-to-recapture.aspx</link><pubDate>Thu, 13 Dec 2007 11:16:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:2642125</guid><dc:creator>Daniel Oxley</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.technet.com/doxley/comments/2642125.aspx</comments><wfw:commentRss>http://blogs.technet.com/doxley/commentrss.aspx?PostID=2642125</wfw:commentRss><description>&lt;P&gt;I often get asked if it is possible to edit the registry of my captured OS (in WIM format) without actually having to apply the image and then recapture it.&amp;nbsp; Well, yes it is possible, and here is how to do it.&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Mount your WIM file with ImageX: &lt;BR&gt;&lt;BR&gt;&lt;STRONG&gt;imagex /mountrw myOS.wim 1 c:\mount &lt;BR&gt;&lt;BR&gt;&lt;/STRONG&gt;&lt;/LI&gt;
&lt;LI&gt;Load the desired registry hive (in this example it is Software): &lt;BR&gt;&lt;BR&gt;&lt;STRONG&gt;reg load HKLM\mykey c:\mount\windows\system32\config\software &lt;BR&gt;&lt;BR&gt;&lt;/STRONG&gt;&lt;/LI&gt;
&lt;LI&gt;Now your can open regedit to make the changes, use "reg add" or import directly a .reg file. &lt;BR&gt;&lt;BR&gt;&lt;/LI&gt;
&lt;LI&gt;Next, we unload the registry: &lt;BR&gt;&lt;BR&gt;&lt;STRONG&gt;reg unload HKLM\mykey&lt;/STRONG&gt; &lt;BR&gt;&lt;BR&gt;&lt;/LI&gt;
&lt;LI&gt;Then we commit the changes back to the WIM file: &lt;BR&gt;&lt;BR&gt;&lt;STRONG&gt;imagex /unmount /commit c:\mount&lt;/STRONG&gt; &lt;BR&gt;&lt;BR&gt;&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;And that's it, couldn't be simpler!&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=2642125" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/doxley/archive/tags/Business+Desktop+Deployment/default.aspx">Business Desktop Deployment</category><category domain="http://blogs.technet.com/doxley/archive/tags/Microsoft+Deployment+Toolkit/default.aspx">Microsoft Deployment Toolkit</category></item><item><title>Creating a WIM the quick way...</title><link>http://blogs.technet.com/doxley/archive/2007/11/27/creating-a-wim-the-quick-way.aspx</link><pubDate>Wed, 28 Nov 2007 00:28:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:2575817</guid><dc:creator>Daniel Oxley</dc:creator><slash:comments>6</slash:comments><comments>http://blogs.technet.com/doxley/comments/2575817.aspx</comments><wfw:commentRss>http://blogs.technet.com/doxley/commentrss.aspx?PostID=2575817</wfw:commentRss><description>&lt;P&gt;IMAGEX is a fantastic tool, but it has a command line that can, at times, be way too complicated.&amp;nbsp; As of yet, there is no official, nice, easy-to-use interface or GUI to simplify the whole thing although a couple of people have posted DIY ones on the web with various levels of success.&lt;/P&gt;
&lt;P&gt;My current client needed a simplified way of creating a WIM file for use during the BDD project I am working on; they are using WIM files as a means of applying files to a computer, similar to just creating a ZIP file and extracting the contents.&amp;nbsp; Anyway, I was asked if Microsoft had something (or could create something) that he could give to a junior member of staff so that s/he could create these WIM files without making mistakes or getting confused with the command line.&amp;nbsp; So, I created a very simple HTA file which will do exactly what he asked for.&amp;nbsp; Seeing as he liked it so much I thought that I would share it here so that others can take advantage of it.&lt;/P&gt;
&lt;P&gt;Feel free to use/abuse/butcher/amend/correct/revise/recycle any or all of the code for your own use.&amp;nbsp; Of course, I must mention the usual disclaimer: USE AT YOUR OWN RISK!&amp;nbsp; THIS IS NOT 100% TESTED CODE.&lt;/P&gt;
&lt;P&gt;Unfortunately, it does come with 3 requirements.&amp;nbsp; The first is that it is run with administrative permissions.&amp;nbsp; This is not a problem with Windows XP if you are an admin on the box but with Windows Vista you'll need to run it elevated (Windows Vista does not give you the "Run as Administrator" option for HTA files so you'll need to elevate a cmd prompt first, then run the HTA.&amp;nbsp; The second is that you have the file imagex.exe in the same folder as the HTA file, and the third is that you have already installed the imagex filter driver.&amp;nbsp; Installing the filter driver is easy to do, either install the WAIK on your computer or just right click on the .inf file which you will find in the same folder as imagex.exe on a computer that has the WAIK installed and choose "install".&lt;/P&gt;
&lt;P&gt;To use: simply copy the code below and paste it (careful with the wordwrap)into notepad.&amp;nbsp; Save the file with the .hta extension and then you are ready to run it, a simple double-click and you are away!&amp;nbsp; Enjoy.&lt;/P&gt;
&lt;P&gt;&amp;lt;head&amp;gt; &lt;BR&gt;&amp;lt;title&amp;gt;WIMCreator&amp;lt;/title&amp;gt; &lt;BR&gt;&amp;lt;HTA:APPLICATION &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; APPLICATIONNAME="IMAGEX - CAPTURE HTA" &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MAXIMIZEBUTTON="NO" &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MINIMIZEBUTTON="NO" &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SCROLL="NO" &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SHOWINTASKBAR="YES" &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SINGLEINSTANCE="YES" &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WINDOWSTATE="NORMAL" &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SYSMENU="YES" &lt;BR&gt;&amp;gt; &lt;BR&gt;&amp;lt;/head&amp;gt; &lt;/P&gt;
&lt;P&gt;&amp;lt;script language="VBScript"&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Sub Window_onLoad &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim path &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set fso = CreateObject("scripting.filesystemobject") &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; path = fso.getabsolutepathname(".") &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CurrFolder.InnerHTML = CurrFolder.InnerHTML &amp;amp; " " &amp;amp; path &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if fso.FileExists(path &amp;amp; "\imagex.exe") = false then &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Msgbox "IMAGEX.exe does not exist in the same folder as this HTA program." &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ImageXExists.checked = false &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; savefolderbox.disabled = true &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; savefolderbutton.disabled = true &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; driversbox.disabled = true &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; driversbutton.disabled = true &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; clearvalues.disabled = true &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; createwim.disabled = true&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; commentbox.disabled = true &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ImageXExists.checked = true &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end if &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Sub &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Function BrowseForSaveLocation &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; On Error Resume Next &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim oShell, oFolder, intColonPos, oWshShell &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set oShell = CreateObject("Shell.Application") &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set oWshShell = CreateObject("WScript.Shell") &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set oFolder = oShell.BrowseForFolder(0, "Choose WIM destination folder", &amp;amp;h17, OPTIONS) &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; BrowseForFolder = oFolder.ParentFolder.ParseName(oFolder.Title).Path &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If Err.Number &amp;gt; 0 Then BrowseForFolder = Null &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If oFolder.Title = "Desktop" Then BrowseForFolder = owshshell.SpecialFolders("Desktop") &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; intColonPos = InStr(oFolder.Title, ":") &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If intColonPos &amp;gt; 0 Then BrowseForFolder = Mid(oFolder.Title, intColonPos - 1, 2) &amp;amp; "\" &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; savefolderbox.value = BrowseForFolder &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Function &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Function BrowseForDrivers &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; On Error Resume Next &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim oShell, oFolder, intColonPos, oWshShell &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set oShell = CreateObject("Shell.Application") &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set oWshShell = CreateObject("WScript.Shell") &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set oFolder = oShell.BrowseForFolder(0, "Choose source folder", &amp;amp;h17, OPTIONS) &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; BrowseForFolder = oFolder.ParentFolder.ParseName(oFolder.Title).Path &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If Err.Number &amp;gt; 0 Then BrowseForFolder = Null &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If oFolder.Title = "Desktop" Then BrowseForFolder = owshshell.SpecialFolders("Desktop") &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; intColonPos = InStr(oFolder.Title, ":") &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If intColonPos &amp;gt; 0 Then BrowseForFolder = Mid(oFolder.Title, intColonPos - 1, 2) &amp;amp; "\" &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DriversBox.value = BrowseForFolder &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Function &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Sub ClearVals &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; savefolderbox.value = "" &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; driversbox.value = "" &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; commentbox.value = "" &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Sub &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Sub CloseHTA &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; self.close &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Sub &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Sub CaptureWIM &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim path &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set fso = CreateObject("scripting.filesystemobject") &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; path = fso.getabsolutepathname(".") &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set oWshShell = CreateObject("WScript.Shell") &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim imgCMD &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; imgCMD = path &amp;amp; "\imagex.exe /capture " &amp;amp; chr(34) &amp;amp; driversbox.value &amp;amp; chr(34) &amp;amp; " " &amp;amp; chr(34) &amp;amp; &lt;/P&gt;
&lt;P&gt;savefolderbox.value &amp;amp; "\mywim.WIM" &amp;amp; chr(34) &amp;amp; " " &amp;amp; chr(34) &amp;amp; commentbox.value &amp;amp; chr(34) &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; oWshShell.Run imgCMD, , True &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Sub &lt;BR&gt;&amp;lt;/script&amp;gt; &lt;/P&gt;
&lt;P&gt;&amp;lt;body&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;span style='font-family: Arial'&amp;gt;&amp;lt;span style='font-size: 10pt'&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;span id = "DataArea"&amp;gt;Welcome to the WIM creation tool!&amp;nbsp; This tool Is NOT an official Microsoft product and &lt;/P&gt;
&lt;P&gt;this therefore totally unsupported.&amp;lt;br /&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;br /&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; You must execute this program with admin rights!&amp;lt;/span&amp;gt;&amp;lt;br /&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;br /&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;hr /&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;br /&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;span id = "CurrFolder"&amp;gt;Current directory:&amp;lt;/span&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;br /&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;br /&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; IMAGEX.exe found?&amp;amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;input id="ImageXExists" type="checkbox" name="imagexexists" checked="CHECKED" disabled="disabled" /&amp;gt;&amp;lt;br /&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;br /&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;hr /&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;br /&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/span&amp;gt;&amp;lt;/span&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/span&amp;gt;&amp;lt;/span&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;span style='font-size: 10pt; font-family: Arial'&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Path to source folder&amp;lt;br /&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/span&amp;gt;&amp;lt;input id="DriversBox" name="DriversBox" style='width: 617px; font-size: 10pt; font-family: Arial;' &lt;/P&gt;
&lt;P&gt;type="text" readonly="readOnly" /&amp;gt;&amp;lt;span &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; style='font-size: 10pt; font-family: Arial'&amp;gt; &amp;lt;/span&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;input id="DriversButton" type="button" value="Browse..." name="DriversButton" onclick="BrowseForDrivers" &lt;/P&gt;
&lt;P&gt;style='font-size: 10pt; font-family: Arial' /&amp;gt;&amp;lt;br /&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;br /&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;span style='font-size: 10pt; font-family: Arial'&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Location for WIM file to be saved&amp;lt;br /&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/span&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;input id="saveFolderBox" name="saveFolderBox" style='width: 617px; font-size: 10pt; font-family: Arial;' &lt;/P&gt;
&lt;P&gt;type="text" readonly="readOnly" /&amp;gt;&amp;lt;span &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; style='font-size: 10pt; font-family: Arial'&amp;gt; &amp;lt;/span&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;input id="saveFolderButton" type="button" value="Browse..." name="saveFolderButton" &lt;/P&gt;
&lt;P&gt;onclick="BrowseForSaveLocation" style='font-size: 10pt; font-family: Arial' /&amp;gt;&amp;lt;br /&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;br /&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;span style='font-size: 10pt; font-family: Arial'&amp;gt;Comment to be included in WIM file&amp;lt;br /&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/span&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;input id="CommentBox" name="CommentBox" style='width: 617px; font-size: 10pt; font-family: Arial;' type='text' &lt;/P&gt;
&lt;P&gt;value="my wim file" /&amp;gt;&amp;lt;br /&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;br /&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;br /&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;hr style='font-size: 10pt; font-family: Arial' /&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;br /&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;input id="CreateWIM" type="button" value="Create WIM" onclick="CaptureWIM" style='font-size: 10pt; font- &lt;/P&gt;
&lt;P&gt;family: Arial" /&amp;gt;&amp;lt;span &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; style='font-size: 10pt; font-family: Arial'&amp;gt; &amp;lt;/span&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;input id="ClearValues" type="button" value="Clear Values" onclick="ClearVals" style='font-size: 10pt; font- &lt;/P&gt;
&lt;P&gt;family: Arial" /&amp;gt;&amp;lt;span &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; style='font-size: 10pt; font-family: Arial'&amp;gt; &amp;lt;/span&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;input id="Exit" type="button" value="Exit" onclick="CloseHTA" style='font-size: 10pt; font-family: Arial' &lt;/P&gt;
&lt;P&gt;/&amp;gt;&amp;lt;span &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; style='font-size: 10pt; font-family: Arial'&amp;gt; &amp;lt;/span&amp;gt; &lt;BR&gt;&amp;lt;/body&amp;gt;&lt;/P&gt;
&lt;P&gt;P.S.&amp;nbsp; I should mention that this was made for the creation of a WIM file based on a folder on your local filesystem.&amp;nbsp; I have no idea, and it was not developed with this in mind, if you could capture an actual Operating System install with it; although I suspect you could...&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=2575817" width="1" height="1"&gt;</description><enclosure url="http://blogs.technet.com/doxley/attachment/2575817.ashx" length="6064" type="application/hta" /><category domain="http://blogs.technet.com/doxley/archive/tags/Business+Desktop+Deployment/default.aspx">Business Desktop Deployment</category><category domain="http://blogs.technet.com/doxley/archive/tags/Microsoft+Deployment+Toolkit/default.aspx">Microsoft Deployment Toolkit</category><category domain="http://blogs.technet.com/doxley/archive/tags/Scripting/default.aspx">Scripting</category></item><item><title>All spaced out</title><link>http://blogs.technet.com/doxley/archive/2007/11/25/all-spaced-out.aspx</link><pubDate>Mon, 26 Nov 2007 00:28:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:2561524</guid><dc:creator>Daniel Oxley</dc:creator><slash:comments>19</slash:comments><comments>http://blogs.technet.com/doxley/comments/2561524.aspx</comments><wfw:commentRss>http://blogs.technet.com/doxley/commentrss.aspx?PostID=2561524</wfw:commentRss><description>&lt;P&gt;Well, as this is my first post on my blog I thought I'd use it to share the solution to a problem I had recently so that nobody else needs go through the stress of debugging it!&lt;/P&gt;
&lt;P&gt;My current project is to install and configure BDD 2007 so that my client can create images for their standard desktop build.&amp;nbsp; The build is Windows XP SP2 with all the core applications, i.e. Office 2003, PDF viewer etc.&amp;nbsp; The problem was that BDD was failing after running, what appeared to be successfully, Sysprep at the end of the reference machine installation.&amp;nbsp; The error displayed was:&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;"The HKLM\System\Setup\CloneTag registry value did not exist"&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&amp;nbsp;And, as advised, the key really did not exist.&amp;nbsp; I had no other errors displayed and if I rebooted the computer manually Sysprep would run normally and the machine would restart into Windows XP.&amp;nbsp; So, I had an error message which was 100% reproducible, but no symptoms of error on the computer, i.e. mini-setup ran correctly upon restart.&lt;/P&gt;
&lt;P&gt;So, dipping into the LTISysprep.wsf script, I removed the '-quiet' parameter from the Sysprep command and relaunched the BDD installation process to see if I would receive any more information.&amp;nbsp; This gave me a new error message which said:&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;&amp;nbsp;"An error occurred while trying to update your registry".&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&amp;nbsp;Well, I knew that already because BDD had told me that the CloneTag key did not exist!&amp;nbsp; Additionally, this problem only occurred if I used the Sysprep.inf file that the client gave to me from their own installation process.&amp;nbsp; Any other Sysprep.inf file worked normally, thus meaning that there was a problem in the contents of the clients.&amp;nbsp; After spending a lot of time with many different combinations of configuration, I asked for help from some other Microsoft BDD experts.&amp;nbsp; &lt;A class="" title="Ben Hunter" href="http://blogs.technet.com/benhunter/" target=_blank mce_href="http://blogs.technet.com/benhunter/"&gt;Ben Hunter&lt;/A&gt; (thanks again Ben) replied back to me after&amp;nbsp;reviewing the Sysprep.inf&amp;nbsp;saying that the problem was caused by a simple space before and after the equals sign&amp;nbsp;in the following line:&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;PCI\VEN_8086&amp;amp;DEV_27C1&amp;amp;CC_0106 = %systemdrive%\drivers\sata\iaahci.inf&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;Low and behold, by removing the space, all worked correctly!&amp;nbsp; My next question was simple.&amp;nbsp; If the client has been using the same Sysprep.inf file for a few years, then why have they never experienced this problem before?&amp;nbsp; And also, why could I find no other documented example of someone with the same problem when I searched on the Internet?&amp;nbsp; The answer is simple; if there is an error in the Sysprep.inf file then Sysprep will simply ignore the line completely if you have used the '-quiet' parameter.&amp;nbsp; Seeing as almost everyone uses this parameter, the error occurred silently and never reared it's ugly head.&amp;nbsp; One further thing, the offending line in the Sysprep.inf file is there so that Sysprep will load the correct drivers for a SATA disk.&amp;nbsp; Seeing as a large majority of people still use IDE, this line is not required thus reducing the chances of having a line like this in the file.&amp;nbsp; The strange thing is that other values in the Sysprep.inf file will still work correctly if they have a space before/after the equals sign.&amp;nbsp; For some reason the section for the mass storage devices is a bit more picky than the rest of the areas!&lt;/P&gt;
&lt;P&gt;The solution was simple, but it took quite a few very frustrating hours to find it.&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=2561524" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/doxley/archive/tags/Business+Desktop+Deployment/default.aspx">Business Desktop Deployment</category><category domain="http://blogs.technet.com/doxley/archive/tags/Microsoft+Deployment+Toolkit/default.aspx">Microsoft Deployment Toolkit</category><category domain="http://blogs.technet.com/doxley/archive/tags/Windows/default.aspx">Windows</category><category domain="http://blogs.technet.com/doxley/archive/tags/MDT/default.aspx">MDT</category></item></channel></rss>