none
Out of box drivers - default if matching MAKE and MODEL is not found? RRS feed

  • Question

  • All,

    I'm deploying to mostly Dell machines and plan to structure my Out of Box drivers folders to something like:

    Windows 7 x64
      Dell Inc.
        OptiPlex 990

    I'll set the DriverGroup001 to the MAKE and MODEL, but my question is, I have some custom built whitebox workstations that do not report a System Manufacturer or Model. I am wondering if I set the DriverGroup001=Windows 7 x64\%MAKE%\%MODEL%, is there some way to tell MDT that if it doesn't find a matching folder to look at folder X so I can specify a folder as default to use if no other folders match?

    Thanks for the help.

    Sunday, November 17, 2013 7:30 PM

All replies

  • I would check the BDD log file of one of your test "whitebox" workstations. Note that Make and Model should be make and model of the Main Motherboard, so even if there is no label on the box itself, ZTIGather.wsf should still produce something, like ASUS etc...

    However, you could add some code to your Task Sequence ( *after* ZTIGather.wsf and *before* ZTIDrivers.wsf)

    <job id="ZTISetMakeModel">
    	<script language="VBScript" src="ZTIUtility.vbs"/>
    	<script language="VBScript">
    
    Option Explicit
    RunNewInstance
    
    Class ZTISetMakeModel
        Function Main
            oLogging.CreateEntry "Check for Make and Model", LogTypeInfo
            If oEnvironment.Item("Make") = "" then
                oEnvironment.Item("Make") = "WhiteBox"
            End If
            If oEnvironment.Item("Model") = "" then
                oEnvironment.Item("Model") = "WhiteBox"  'Or Some other Value...
            End If
        End Function
    End Class
    	</script>
    </job>
    
    This will auto-fill in some values, if ZTIGather.wsf does *not* find any values.

    Keith Garner - keithga.wordpress.com

    Sunday, November 17, 2013 11:09 PM
    Moderator
  • I would check the BDD log file of one of your test "whitebox" workstations. Note that Make and Model should be make and model of the Main Motherboard, so even if there is no label on the box itself, ZTIGather.wsf should still produce something, like ASUS etc...

    However, you could add some code to your Task Sequence ( *after* ZTIGather.wsf and *before* ZTIDrivers.wsf)

    <job id="ZTISetMakeModel">
    	<script language="VBScript" src="ZTIUtility.vbs"/>
    	<script language="VBScript">
    
    Option Explicit
    RunNewInstance
    
    Class ZTISetMakeModel
        Function Main
            oLogging.CreateEntry "Check for Make and Model", LogTypeInfo
            If oEnvironment.Item("Make") = "" then
                oEnvironment.Item("Make") = "WhiteBox"
            End If
            If oEnvironment.Item("Model") = "" then
                oEnvironment.Item("Model") = "WhiteBox"  'Or Some other Value...
            End If
        End Function
    End Class
    	</script>
    </job>
    This will auto-fill in some values, if ZTIGather.wsf does *not* find any values.

    Keith Garner - keithga.wordpress.com

    OK, I'll probably have to do a little more fiddling with these then. I've run WMIC on these machines myself just to see what they report, some report "System Manufacturer" as the Manufactuer, others have the manufacturer blank. Ugh..

    The ones with Intel boards seem to be pretty good though. They report Intel as the manufacturer and the model of the motherboard for the Model.

    Sunday, November 17, 2013 11:13 PM
  • I use the vbs script below to give me the information.

    So far its bought me joy.

    Dim strComputer '. is the local PC
    Dim WshShell 'the windows script shell
    Dim strQuery 'the WMI Query to run
    Dim colCompSys 'the win32_ComputerSystem collection
    DIM PCModel 'the trimmed string with the model name
    DIM strSerialNum
    Dim colSMBIOS
    strComputer = InputBox("Please enter a computer name," & vbcrlf & "or a '.' for localhost")

    Set WshShell = WScript.CreateObject("WScript.Shell")
    strQuery="SELECT * from Win32_ComputerSystem"
    Set colCompSys=GetObject("WinMgmts://" & strComputer & "/root/cimv2").ExecQuery(strQuery)

    For Each WMIProperty in colCompSys
    PCModel = TRIM(WMIProperty.Model)
    PCMake = TRIM(WMIProperty.Manufacturer)
    Next

    strQuery="Select * from Win32_SystemEnclosure"
    Set colSMBIOS=GetObject("WinMgmts://" & strComputer & "/root/cimv2").ExecQuery (strQuery)

    For Each objSMBIOS in colSMBIOS
            strSerialNum = objSMBIOS.SerialNumber
    Next


    WScript.Echo "PC Details: " & VBCrLf & PCMake &  VBCrLf & PCModel & VBCrLf & strSerialNum

    WScript.Quit

    Sunday, November 17, 2013 11:19 PM