Deployment Artist


The site is finally put to rest...

You find new content on the Deployment Research site, a site filled with articles and video-tutorials on how to deploy operating systems. If you are missing something on the new site, please let me know. You can find me on twitter on my @jarwidmark alias.

You can also search the old article archive below.

Regards / Johan Arwidmark

 Blog_List Minimize

 Blog_Archive Minimize

 New_Blog Minimize
You must be logged in and have permission to create or edit a blog.

 BDD Build Information Inventorying using SMS Minimize
Location: BlogsJason Scheffelmaer    
Posted by: Jason Scheffelmaer 2/6/2007 12:14 PM


Edited May 1st, 2007: Removed class and instance creation. Also updated class to point to the correct class that ZTITatoo creates which is "Microsoft_BDD_Info".

Notice: If you are not familiar or comfortable with making SMS_DEF.MOF changes I suggest you research editing the SMS_DEF.MOF file first.

For more advanced information concerning MOF editing and testing I refer you to the many articles located on


You will need to locate your SMS_DEF.MOF file on your SMS servers.  This file is located here: X:\sms\inboxes\clifiles.src\hinv where X: is the drive letter SMS is installed to.  It is recommended to make the change on all of your SMS servers to keep the inventory in sync.

  1. Open SMS_DEF.MOF file.
  2. Copy the contents listed below as MOF EDIT to the end of the file.
  3. Run MOFCOMP.EXE SMS_DEF.MOF -check to check syntax of the file
  4. Run MOFCOMP.EXE SMS_DEF.MOF to compile the mof file with the new entries on the server.
  5. Create a SMS Package to push this MOF change out to your advanced clients. Program command line: MOFCOMP.EXE SMS_DEF.MOF
  6. The advanced clients will need to update their machine policy to know they need to inventory these new entries. After policy update the next hardware inventory for that machine will be uploaded to the server for reporting.

#pragma namespace ("\\\\.\\root\\cimv2\\sms")

[ SMS_Report     (True),
  SMS_Group_Name ("Microsoft BDD Info"),
  SMS_Class_ID   ("MICROSOFT|MicrosoftBDDInfo|1.0") ]

class Microsoft_BDD_Info : SMS_Class_Template
    [SMS_Report (TRUE), key ]  
        string InstanceKey;
    [SMS_Report (TRUE)      ]  
        string DeploymentMethod;
    [SMS_Report (TRUE)      ]  
        string DeploymentType;
    [SMS_Report (TRUE)      ]  
        string DeploymentTimeStamp;
    [SMS_Report (TRUE)      ]  
        string BuildID;
    [SMS_Report (TRUE)      ]  
        string BuildName;
    [SMS_Report (TRUE)      ]  
        string BuildVersion;
    [SMS_Report (TRUE)      ]  
        string OSDPackageID;
    [SMS_Report (TRUE)      ]  
        string OSDProgramName;
    [SMS_Report (TRUE)      ]  
        string OSDAdvertisementID;


SMS BDD Info Report Query:

Here is one example of querying the BDD information once it has started to upload to the server. This is a simple query, you can make it as complex as you like.

select Name0 as "Machine Name", BuildID0 as "Build ID", BuildName0 as "Build Name", BuildVersion0 as "Build Version", DeploymentMethod0 as "Deployment Method", DeploymentType0 as "Deployment Type", DeploymentTimeStamp0 as "Deployment Time Stamp", TimeStamp as "Inventory Time Stamp" from v_GS_MICROSOFTBDDINFO
inner join v_R_System on V_GS_MicrosoftBDDINFO.ResourceID = v_R_System.ResourceID





Permalink |  Trackback

Your name:
Add Comment   Cancel 

 Search_Blog Minimize

Copyright 2006-2012 (c)   Terms Of Use  Privacy Statement
DotNetNuke® is copyright 2002-2019 by DotNetNuke Corporation