MDT 2010 - Setting the Computer Description in AD without a webservice

Posted by: johan
7/21/2010web

Quite a few people have asked my how to retrieve the computer description value from the MDT database or the deployment wizard, and then store it in Active Directory as well as on the local machine, system properties. So I decided it was time for a new posting...ide

This sample does not require a webservice, however, if you don't mind using a webservice, you can always use Maik Kosters execellent guide:post

Setting the Computer Description in Active Directory during MDT Deployments
http://myitforum.com/cs2/blogs/maikkoster/archive/2009/12/14/setting-the-computer-description-in-active-directory-during-mdt-deployments.aspxui

This article describes the following processesthis

1. Get the Computer Description value.
2. Store the Description value on the computer object in Active Directory
3. Store the Description value on the system properties of the local computerorm

Download the sample scriptsxml

Step 1 - Get the Computer Description value. blog

Built-in to MDT you have two options for this, either by enabling the description feature in the deployment wizard or by storing the value in the MDT databaseip

Option 1 - Enabling the computer description feature in the deployment wizardci

  1. Open DeployWiz_Definition_ENU.xml in your favorite editor, search for "Computer Description Format"
  2. Remove the comments () around the paragraph starting with

    You can also give your computer a friendly description... see this p_w_picpath
     

     

  3. Configure your customsettings.ini with the following (the Description field is on the same pane as Configure the computer name).
    [Settings]
    Priority=Default
    [Default]
    OSInstall=Y
    SkipComputerName=NO
    When you start the deployment wizard the configure computer name screen will look like this: 
     

 

Option 2 - Setting the value in the MDT database

If you have set the value in the MDT database, you need to either query the ComputerIdentity table (because the built-in view doesnt list the description value), or update the view. In this example I query the ComputerIdentity table directly.

You need to add a custom property into customsettings.ini for the description property, and I selected to also set the ComputerDescription value so that we are consistent with using the wizard which sets that value. Another option is to take care of that in the scripts, checking for either Description or ComputerDescription values, but it's a bit easier simply to setComputerDescription to be the Description value that we get from the database.Configure your customsettings.ini with the following:

[Settings]
Priority=CIdentity, Default
Properties=Description, ComputerDescription

[Default]
OSInstall=Y
ComputerDescription=%Description%

[CIdentity]
SQLServer=MDT01
Instance=SQLEXPRESS
Database=MDT
Netlib=DBNMPNTW
SQLShare=Logs$
Table=ComputerIdentity
Parameters=UUID, AssetTag, SerialNumber, MacAddress
ParameterCondition=OR

Step 2 - Store the Description value on the computer object in Active Directory

  1. Download the sample scripts.
  2. Copy ZTISetComputerDescriptionInAD.wsf to the scripts folder in your deployment share.
  3. Create a custom action in the State Restore phase, any place will do, I added the action to the Custom Tasks group. Use the following settings
    Type:  Run Command Line
    Name:  Set Computer Description in Active Directory
    Command:  cscript.exe "%SCRIPTROOT%\ZTISetComputerDescriptionInAD.wsf"
    Runas:
    Load the user's profile: Selected
    Note: The account that you use must have permissions in Active Directory to modify computer object attributes.

     

Step 3 - Store the Description value on the system properties of the local computer

  1. Download the sample scripts.
  2. Copy ZTISetComputerDescriptionLocally.wsf to the scripts folder in your deployment share.
  3. Create a custom action in the State Restore phase, any place will do, I added the action to the Custom Tasks group. Use the following settings
    Type:  Run Command Line
    Name:  Set Computer Description Locally
    Command:  cscript.exe "%SCRIPTROOT%\ZTISetComputerDescriptionLocally.wsf"

/ Johan