Supporting different build types using a single deployment share

I have recently been working with a customer deploying Windows 7 using MDT. One of the requirements the customer had is to be able to use a single deployment share to capture and deploy images without having to use the MDT database. Using a single deployment share is complicated by the requirement to specify different configurations depending on whether the deployment type is a capture of a reference build or the deployment of the standard image. For example, during the deployment of the reference image, the capture settings dialog should not be displayed.

The customer used a set of Virtual Machines to perform captures of the reference build, therefore we could use information specific to those Virtual Machines to determine whether a capture or deployment was taking place. We used a simple user exit script to determine whether the MAC address of the client was linked to a Virtual Machine and if so set configuration options for a capture build. Otherwise, the build was treated as a standard deployment. Below are examples of a customsettings.ini and user exit script.



Priority=Default, Role










Function UserExit(sType, sWhen, sDetail, bSkip)

UserExit = Success

End Function

Function Role(strMac)

If strMac = “00:00:00:00:00:00” Then

Role = “ReferenceBuild”

Else Role = “StandardBuild”

End If

End Function

Disclaimer: The information on this site is provided "AS IS" with no warranties, confers no rights, and is not supported by the authors or Microsoft Corporation. Use of included script samples are subject to the terms specified in the Terms of Use

This post was contributed by ­­­­­­­­­­­­­­Matt Bailey, a Consultant with Microsoft Services – UK.

Comments (1)

  1. Anonymous says:

    I do not use a database, and make my settings based on who logs in.  I use the UserID variable for the priority.  I also have three folders for applications, operating systems, and task sequences: "Image Creation", "Image Deployment", and "Image Development." I then set up Selection Profiles to section off the task sequences/applications.  The UserID property is then used to change the WizardSelectionProfile variable.  I make it so that based on who I log in with, I get more options to choose from.  Here is an example of my custom settings:

    priority=UserID, Default









    When AdminUser logs in, they have access to all applications and task sequences, one of which captures an image.  When StandardUser logs in, they only have access to deploy the image, and do not see anything else.  I can also change any other variable based on who logs in, such as the domain and backup windows, using this method.  Capturing an image, I leave it open to set the workgroup.  Standard users, I hide the Domain screen so it forces the domain join.

    Hope this helps 🙂