MDT 2012, Custom Task Sequence Variable to choose between Operating System Images
-
Monday, September 24, 2012 6:41 PM
Hi there,
I've used the search about MDT's Custom Task Sequence Variables but Im thinking I dont understand the correct way to use the variables.
So I have a Build task sequence to build a reference image, the thing is that a customer of ours has two Windows XP versions
- DELL OEM source files
- Windows XP VLK source files
So I've guessed by setting a task sequence variable at the beginning of the task sequence I can easily switch between the different operating system images/source files. So I've set a Custom Task Sequence Variable: REFTYPE at the beginning of the task sequence.
Then when it comes to selecting the correct operating system image I've set an condition to the folder "Install" which inherits the steps "Install Operating System" and "Next Phase"
See my pictures below to fully understand what I mean:
So here I set the Task Sequence Variable which in this case is VLK
Here I have set the value OEM as REFTYPE, which should take the OEM source files for deployment
Obviously, I've set the VLK value as REFTYPE on the other folder, which would install the Windows VLK source files.
However, whatever I try, I cant get this to work.
Some advise would be much appreciated.
Many thanks in advance
Keep us posted, and if helpful please rate! Kind regards
- Edited by Rens Hollanders Monday, September 24, 2012 6:43 PM
All Replies
-
Monday, September 24, 2012 7:24 PMSide note here: using OEM media for imaging is verboten per the Windows EULA. There are no exceptions: http://www.microsoft.com/licensing/about-licensing/volume-licensing-briefs.aspx
Jason | http://blog.configmgrftw.com
-
Monday, September 24, 2012 7:34 PM
Jason,
Thanks for this information, I was not aware of this. Well, that's one way to solve my problem :) But let me rephrase my question then. Say I wanted to choose between two Operating System Images based on a custom task sequence variable, with the correct variable of image to use set right at the beginning of my task sequence like I did in the example screenshot above.
How can I realize this then?
Keep us posted, and if helpful please rate! Kind regards
-
Monday, September 24, 2012 10:17 PM
Hi,
I think you'll run into a totally different issue regardless of what is permitted or not. I don't see what the issue is for deploying OEM XP since I used MDT for this as well when I was still working for a system builder, OEM licenses are for pc's that are sold including the OS to another party. Whether the other party buys pc's from a large OEM, or a different channel shouldn't matter.
Anyway, I think you should be able to manage to get the proper image deployed onto the disk using the method you're trying, however the unattend.txt file that will be used (including the product key to make the installation unattended) is the one that's in the folder of the current task sequence. These config files are not bound to a specific image, but task sequences. Example:
Your TSID is: {XPPRO}
Inside the \Control\XPPRO folder, you'll see an unattend.txt file. In this you can specify a product key. An OEM key, cannot be used to pass the product key validation during setup with a VLK (mini)setup. Same goes for the other way around. While typing this I came to the thought that you can get around this issue by not providing a product key inside the unattend.xml but instead use the variable [ProductKey=AAAAA-BBBBB-CCCCC-DDDDD-EEEEE-FFFFF] and configure this the same way you plan on choosing the proper image (so verify the value of reftype, to apply either the OEM key, or VLK key). Note: in order not to conflict with OEM licensing, the deployed OEM XP will need to have it's product key removed (I always do this with sysprep) so that every OEM type machine will need to be activated with the CoA product key. If you don't do this step, every machine will use the same single OEM key, normal OEM keys are not suitable for this kind of activation.What do you use to configure the reftype variable? A custom pane in the deployment wizard?
Kind regards,
Stephan SchwarzIf one of these posts answered your question or issue, please click on "Mark as answer".
My Blog | Twitter: @Schwarz_Stephan | MCTS, MCITP, MCSA, MCC-2011.
How to configure Windows RE/OEM Recovery Partition with MDT- Proposed As Answer by Jason SandysMVP Tuesday, September 25, 2012 12:52 AM
- Unproposed As Answer by Jason SandysMVP Tuesday, September 25, 2012 12:52 AM
- Proposed As Answer by Jason SandysMVP Tuesday, September 25, 2012 12:53 AM
- Unproposed As Answer by Jason SandysMVP Tuesday, September 25, 2012 12:53 AM
-
Tuesday, September 25, 2012 12:55 AM
I don't see what the issue is for deploying OEM XP since I used MDT for this as well when I was still working for a system builder, OEM licenses are for pc's that are sold including the OS to another party. Whether the other party buys pc's from a large OEM, or a different channel shouldn't matter.
OEM licenses and images are for distribution only by OEMs. Anything else is strictly against the EULA. It matters simply because Microsoft says it does. Please read the Reimaging Rights document at the link above.Jason | http://blog.configmgrftw.com
-
Wednesday, September 26, 2012 8:13 AM
Hi there,
thank you all for your reply's. I'm currently working on a vbscript msgbox or inputbox where I can provide the variable's for the type of image, which would be a selectable between multiple WIM files. Then provide the hostname and the computer description. Then I've got all the blanks filled in.
The thing is that at first I wanted to specify the task sequence value in the task sequence itself instead of creating a HTA or vbscript to query for the value. But I suppose this is something that does not work?!
Keep us posted, and if helpful please rate! Kind regards
-
Wednesday, September 26, 2012 6:04 PM
So, I've been working on a Custom HTA and this is the result:
Code block:
<html> <head> <title>OSD Front End Script</title> <HTA:APPLICATION APPLICATIONNAME="OSD GATHER" SCROLL="yes" SINGLEINSTANCE="yes" WINDOWSTATE="normal" BORDER="thin"> </head> <script language="vbscript" type="text/vbscript"> ' Set objects and declare global variables Set env = CreateObject("Microsoft.SMS.TSEnvironment") Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2") Sub Window_onLoad window.resizeTo 400,550 ' Resize the HTA window on first load window.moveTo 100, 100 ' Move the window to the center End Sub Sub ButtonFinishClick ' ButtonFinishClick is executed by the "Finish" button. ' Set value of variable to true/false based on whether the checkbox is selected or not If WindowsXPRETAIL.Checked Then strWindowsXPRETAIL = "true" else strWindowsXPRETAIL = "false" End If If WindowsXPVLK.Checked Then strWindowsXPVLK = "true" else strWindowsXPVLK = "false" End If If Windows7RETAIL.Checked Then strWindows7RETAIL = "true" else strWindows7RETAIL = "false" End If If Windows7VLK.Checked Then strWindows7VLK = "true" else strWindows7VLK = "false" End If If Office2010.Checked Then strOffice2010 = "true" else strOffice2010 = "false" End If If Visio2010.Checked Then strVisio2010 = "true" else strVisio20107 = "false" End If If Project2010.Checked Then strProject2010 = "true" else strProject2010 = "false" End If ' Set value of variables that will be used by the task sequence, then close the window and allow the task sequence to continue. env("OSDComputerName") = strComputerName env("OSDComputerDescription") = strComputerDescription env("OSDWindowsXPRETAIL") = strWindowsXPRETAIL env("OSDWindowsXPVLK") = strWindowsXPVLK env("OSDWindows7RETAIL") = strWindows7RETAIL env("OSDWindows7VLK") = strWindows7VLK env("OSDRETAILkey") = strRETAILkey env("OSDOffice2010") = strOffice2010 env("OSDVisio2010") = strVisio2010 env("OSDProject2010") = strProject2010 window.Close End Sub </script> <body STYLE="font:12 pt arial; color:black; background-color: #FFFFFF"> <span id = "List"></span> <p>Provide Computername:<br> <input type="inputbox" name="ComputerName"<br> <p>Provide Computerdescription:<br> <input type="inputbox" name="ComputerDescription"<br> <p>Select which Operating System Image to install: <br> <br> <input type="checkbox" name="WindowsXPRETAIL"> Windows XP RETAIL <br> <input type="checkbox" name="WindowsXPVLK"> Windows XP VLK <br> <input type="checkbox" name="Windows7RETAIL"> Windows 7 RETAIL <br> <input type="checkbox" name="Windows7VLK"> Windows 7 VLK <br> <br> <p>Provide RETAIL product key:<br> <input type="inputbox" name="RETAILkey" style="width: 200px"<br> <p>Select which Office Suite Components to install: <br> <br> <input type="checkbox" name="Office2010"> Office 2010<br> <input type="checkbox" name="Visio2010"> Visio 2010<br> <input type="checkbox" name="Project2010"> Project 2010<br> <br> <button accesskey=N type=submit id=buttonFinish onclick=ButtonFinishClick >Install</button> </body> </html>Task Sequence entry:
Who can connect the dots for me?
Currently I do not know how to supply multiple unattended.xml and Unattended.txt with the selected operating system images.
and how to provide the computername, computerdescription and retail key to the deployment.
Many thanks in advance!
- Edited by Rens Hollanders Wednesday, September 26, 2012 6:08 PM added screenshots
-
Wednesday, October 03, 2012 7:26 PM
Hi Rens,
It took me a while to find this thread again.. anyway what I don't understand at this point is why you're going through all this trouble?
To me it seems like you're trying to re-invent the wheel (as a figure of speech of course). MDT already provides you with a full fledged wizard in which you can enter all the information that you want to provide manually.
The only thing that MDT doesn't provide out of the box would be an input field for the computer description and the product key.
Since initially you referred to WinXP by itself, I figured it was just a matter of just deploying 2 kind of XP images with 1 task sequence, this by itself isn't much of an issue. However when you're starting to add different OS's to this same task sequence it will add a whole level of complexity, since MDT was not designed to function this way. So I'm not even going to try and come up with a method to think of sorting out multiple unattend.txt and unattend.xml files for 1 single task sequence.
Instead you should create multiple task sequences, one per OS. Ensure the install applications task sequence step is enabled, and configured to install multiple applications (default setting), this will allow you to go through the MDT wizard, with first selecting an OS, along with some settings like computername and the software that should be installed.
The two additional fields that you added in your frontend, you could add those on a custom wizard pane: http://blogs.technet.com/b/mniehaus/archive/2012/03/01/3474394.aspx
Kind regards,
Stephan Schwarz
If one of these posts answered your question or issue, please click on "Mark as answer".
My Blog | Twitter: @Schwarz_Stephan | MCTS, MCITP, MCSA, MCC-2011.
How to configure Windows RE/OEM Recovery Partition with MDT- Edited by Stephan Schwarz Wednesday, October 03, 2012 7:27 PM
- Marked As Answer by Rens Hollanders Thursday, April 25, 2013 1:40 PM
-
Thursday, October 04, 2012 11:27 AM
Hi Stephan,
Thanks for taking the time for your extensive answer. I'll guess your right. I'll just have to look in to two task sequences. Should be no problem.
Thanks though
Keep us posted, and if helpful please rate! Kind regards

