Using HP Proliant Broadcom NICs in WinPE

June 7, 2012 7 comments

We recently got in a new HP Proliant BL460c Gen8 blade with the HP 530FLB NIC. It’s a great piece of hardware but using the NIC in WinPE is not much fun.  We recently started using MDT to deploy Windows servers now but no matter what I did I could not get the NIC driver to load in WinPE.

Even though the drivers were imported into MDT and I had rebuilt my boot images it would not load.  Finally I ran HP’s driver installation utility from inside WinPE and it came up.  That’s when I discovered that the NIC needs the HP Virtual Bus Device driver loaded before it can load the NIC driver.  Looking at the PnP IDs that the driver supports I noticed they all start with b06bdrv\l2nd instead of the usual pci_<VenID>.  This is because the NIC virtual sits on top of another device. 

So why not just load the HP Virtual Bus Device in MDT?  That’s what I did but the HP Virtual Bus Device is a system-class driver and by default MDT does not copy system-class drivers into the boot images.  image

Sure you can configure it to add them but then your boot images will get much larger.  My solution was to instead put a copy of the HP Virtual Bus Device (evbd.inf) driver into my MDT boot image using the “Extra directory to add” feature in MDT.  I also imported the NIC drivers into MDT as I normally do. 


Once the boot image loads press F8 to open a new command window. Navigate to the folder you added to the MDT boot image (it should be right off the root) and enter drvload evbd.inf. After a few seconds the driver will load and the NIC should now be active. It’s not an ideal solution but since we don’t deploy a lot of these servers it works for me.  This same process would also apply to some of the other Broadcom NICs used in HP blades and servers like the NC373i and NC382i. 

Categories: Deployment, HP, MDT, Windows Tags: , , ,

Setup MDT 2012 to use USMT 3

May 15, 2012 4 comments

I recently upgraded our MDT 2010 Deployment share to 2012 and ran into an issue with USMT 3.  We still have some scenarios where we are deploying Windows XP so USMT 3 is required.  Whenever we ran a task sequence that needed the USMT 3 files we would get an error that the files could not be found.  I thought this was odd since the USMT 3 CAB file was in the correct location.  Or at least it was for 2010. 

In MDT 2010 you just had to leave the USMT30_x86.CAB file in the DeploymentShare\Tools\X86 folder and MDT took care of the rest.  With MDT 2012 you need to create a USMT3 folder in DeploymentShare\Tools\X86 and then unpack the CAB file into this folder.  It will not unpack the CAB file for you anymore.  Now MDT will be able to find the USMT files and continue.

Hopefully this helps out anyone else that has done an upgrade from 2010 to 2012.

Categories: Deployment, MDT Tags: , ,

DISM GUI 4.0 Feature Requests

February 20, 2012 60 comments

I’ve just started working on version 4 of DISM GUI and honestly I don’t know what features of DISM to add.  So I’m asking the community for some help here.

  • What features of DISM that you use often are missing from the GUI?
  • What changes to the graphical interface would you suggest?
  • Do you use DISM in online mode?  If so would having an online mode be a useful feature to add?

Most of my work with DISM GUI revolves around managing drivers and features but I understand my use case is not the same as everyone else’s.  I’ve tried to add what the I felt were the most used features of DISM to the application.  Leave some feedback here or head on over to the Codeplex site and leave your suggestion there.

Categories: DISM, DISM GUI Tags: , ,

DISM GUI is now on CodePlex

February 8, 2012 Leave a comment

I have finally created a CodePlex project for DISM GUI.  The latest version (3.1) can be found on the CodePlex site as well as the source code for what will eventually be version 4.0.  So for anyone that wants to see the inner workings (and my sloppy code) of DISM GUI head on over to CodePlex to take a look.  If you are interested in helping out with the development contact me through the Codeplex site.

From now on I will be keeping all releases of DISM GUI on the CodePlex site and remove it from my Skydrive account. 

Categories: DISM GUI Tags: , ,


November 30, 2011 24 comments

**An Updated version of DISM GUI can be found here**

Version 3.1 of DISM GUI is ready for download.  No major changes in this just a few background changes and 2 usability updates based on feedback I received.

  • Added a confirmation dialog box to the exit button.  Now if you accidently click Exit you will be prompted to confirm exiting the program.
  • The WIM location and path can now handle quotes in the text box.
      I’m working on cleaning up the code and eventually turning this into a Codeplex project.  I really haven’t had a lot of time to work on it lately but hopefully early next year I can start on it. If you are interested in contributing to the Codeplex project when it goes live contact me
Categories: Deployment, DISM, DISM GUI, WAIK Tags: , ,

USMT 3.0 and Office 2010

November 17, 2011 1 comment

So you are still doing Windows XP to Windows XP migrations using MDT but you have deployed Office 2010.  You realize that USMT 3.0 doesn’t support Office 2010 and user’s settings are not getting carried over.  Sure USMT 4.0 supports Office 2010 but it doesn’t support Windows XP as a target.  What do you do now?

Well it turns out you can use the XML rules files from the USMT 4.0 update with USMT 3.0.  All you need to do is put them in the correct location in the MDT Deployment Share.  Just make sure that you place the MigApp.xml file in the DeploymentShare\Tools\x86 folder and USMT 3.0 will use the updated files.

I don’t know if this is supported by Microsoft but we have been using it for the past few weeks for some XP to XP migrations and it has worked out well for us.

Categories: Deployment, MDT, Office Tags: ,

Using MDT Queries to Assign Applications to Specific Hardware

October 26, 2011 1 comment

I was asked by a commenter (here you go Alan!) on expanding on how I use a Make and Model query to automatically assign applications to a specific hardware models.  It’s a very easy and powerful feature of MDT and it makes installing those OEM supplied utilities a lot easier.

I’m going to assume that you already have your SSM packages created in your MDT Applications.  If not refer to my post on them here.

The first thing you need to do is configure the MDT Configuration Database.  There are many articles on the internet that already cover this (including the MDT Documentation) so I won’t rehash that information.  One I found particularly good was this one.  After you have configured that database and the rules make sure you update your WinPE boot images.  If you don’t they will not be able to take advantage of the make and model queries.

Now that your database is configured and you have configured your rules (all explained in the previous link) you can use MDT to dynamically assign applications based on model.  In the Deployment Workbench go to Advanced Configuration > Database > Make and Model.


Right click Make and Model and choose New.  On the first screen you need to define your Make and Model as is represented in WMI.  It’s important that the Make and Model fields exactly match the Name (Model) and Vendor (Make) attributes store in the WMI database.  For those that don’t know how to find this information you can use the WMIC tool to display it.  The below command returns the Make and Model information from WMI.  Note that Name = Model and Vendor = Make.

wmic csproduct get /value


After you enter in the Make and Model information click on the Applications tab.  Click Add and choose the SSM application that you want to assign to this model.  You can assign as many as you want.  Each application that you add to this make and model will be automatically assigned when you choose a deployment task sequence.

Boot from you WinPE image and choose your deployment task sequence.  When you get to the screen to choose your applications the ones you previously added to the Applications tab should already be checked.

This is a great way to deploy OEM specific applications in an automated process but you can also do this with any application in MDT.

Outlook 2010 Mailbox Cleanup wizard does not display after mailbox quota has been exceeded

September 12, 2011 3 comments

Sorry for the long wordy title but I couldn’t think of a better way to describe this post.

When we migrated from Office 2003 to Office 2010 earlier this year one issue we ran into with Outlook 2010 was with the Mailbox Cleanup wizard.  In Outlook 2003 when a user exceeded their mailbox quota and tried to send a an email the Mailbox Cleanup wizard would be displayed.  This made it very obvious to them that they could not send anymore email until they archived or deleted some email.  In Outlook 2010 the only indication our users were getting was an error message in the Outlook status bar and messages staying in the Outbox.  You had to double click the error icon to get the cryptic error message that most users did not understand.    It was nice that Outlook displayed the information but unless you were looking right at the status bar it was really easy to miss it.

We tried different settings in the registry but we could not get the Mailbox Cleanup wizard to be displayed.  It wasn’t that the users wanted the wizard (they could just as easily run it from the File menu) it was that is made it really obvious to them that they were over their limit and if they wanted to keep sending emails they better clean some old email out.  The new notification was really a step back for them.

As it turns out the issue only affects Outlook 2010 when connected to an Exchange 2003 server. Under Exchange 2007 or 2010 this was not an issue or so I am told because I don’t have an Exchange 2007/2010 server to test against.

Well Microsoft finally released a fix for this.  The August 2011 Outlook 2010 hotfix package fixes the issue.  From the notes

“Assume that an Outlook 2010 mailbox reaches its size limit on an Exchange Server 2003 server. When you try to send an email message in Outlook 2010 that is in cached mode, the email message stays in the Outbox and the Mailbox Cleanup wizard does not start.”

Hopefully this helps out someone else with the same issue.

Categories: Office, Outlook Tags:

Deploying A Customized Power Plan in Windows 7 with MDT

August 1, 2011 10 comments

During our Windows 7 deployment we needed to deploy a customized power plan to our clients.  Windows provides an easy way to import and export power plans using the powercfg.exe utility.  With a little VB scripting automating the import of the plan through MDT is easy.

Here is the script I was using to import our customized plan and set it to active.

strPowerPlanFile = "c:\Folder\PowerPlan.pow"

Set objShell = CreateObject("WScript.Shell")

Set objWshScriptExec = objShell.exec("powercfg.exe -import " & strPowerPlanFile)

Set objStdOut = objWshScriptExec.stdOut


While Not objStdOut.AtEndOfStream

   strLine = objStdOut.ReadLine

   If InStr(strLine,"GUID:") Then

    strGuid = Right(strLine,36)     

   End If   

Wend "powercfg -setactive " & strGuid

Not much to it really.  First we run the powercfg.exe utility with the –import command line to import the file that contains the customized plan.  Each time you import a plan it gets a new GUID every time.  Powercfg outputs the GUID when the import completes.  We capture this line from the output, parse it, and then run the powercfg.exe utility again with the –setactive option to activate our new plan.

Now all you need to do is add a new step to your MDT TS to execute this script in the State Restore phase. 

Categories: Deployment, MDT Tags: ,

HP Elitebook Hotkeys Installation using SSM and MDT

July 28, 2011 20 comments

Not too long the decision was made to move to HP laptops from our old vendor.  I was tasked with making sure our existing MDT environment could support the HP laptops (8460p and 2560p).  Drivers were relatively easy but I did run into some issues with the HP Hotkey Support buttons.  These are the buttons that control volume, screen brightness, mute etc. 

The SoftPaq from HP consists of both drivers and an application all wrapped up in a single installer.  My first attempt was to extract the drivers and then import them into the MDT database.  This worked and the drivers installed during setup and I have no yellow bangs in device manager.  However only some of the hotkeys worked.  My next attempt was to keep the drivers loaded in the MDT database and I would run a silent install after Windows was installed to install the supporting application to control the keys.  The installer is MSI based so I thought this would be easy.  Make the application default in MDT based on these specific manufacturer and models and I would be golden.  Clean, simple, and automated. 

After mucking about with the MSI and included MST files I was able to get it to silently install but it never would load the application.  The install would complete successfully but it refused to install the application.  I even ripped the drivers out of the MDT database and I still had the same issue.  If I ran it non silently it would install correctly but this was hardly ideal. 

I knew there had to be a way of doing this in some kind of automated fashion.  HP deploys these laptops by the thousands.  I doubt they pay anyone to sit there and click next all day for this.  After doing some more research I found the HP SSM and SDM tools.  HP System Software Manager make it super easy to deploy Softpaqs to one or multiple machines.  In order to deploy a Softpaq through SSM it needs to be marked as SSM compliant.  Most of them are but every once in a while you run into one that isn’t. 

First I downloaded the HP SDM and installed it on my MDT management server along with SSM.  I used the SDM tool to download the Softpaq for the HP Hotkeys.  You could use this for other Softpaqs but I am just going to focus on the Hotkeys for now.

Then I created a subfolder on my MDT server and copied the SSM.exe and SSM.bin files into this subfolder.  You should create a share on this subfolder so you can access SSM from any other PC.  Next I created a subfolder for the HP Hotkeys Softpaq and copied it into the subfolder.  If you are going to deploy multiple Softpaqs I recommend creating a folder for each Softpaq.

Now run the SSM.exe file and accept the agreement.  Click next on the welcome screen and you will be asked for the file store directory.


Set it to the subfolder you created to hold all your Softpaqs.  If you are going to deploy multiple Softpaqs make sure you set it to the root subfolder.  SSM will read each subfolder in the directory structure for Softpaqs.  If you did not share this folder before you can let SSM do it for you.  Personally I like to control what gets shared on my server so I did it manually.  Click Next and then click next again to confirm.

You can set various client options on the next screen.  I like to display a status bar while the update is installing.  Once you set your options click next.


If you are deploying a BIOS with SSM you are REQUIRED to set a password.  Check the box if applicable and click next.  Click Next on the summary screen.  Finally click the Build Database button to build the SSM database.  This will create 2 MDB files that SSM will use to install the Softpaqs.  Click Finish to save your changes.  You now have a complete package that you can call from MDT to install the Sofpaqs silently.

Now that we have this package how can we use it from MDT?  That’s the easy part.  SSM has a command line mode that you can use to call it from MDT and install the Softpaqs silently.

Create a new application in MDT.  When prompted for the application type set it to “Application without a source files or elsewhere on the network”.  Your command line will be \\servername\Sharename\ssm.exe \\servername\Sharename /a /CSPWD:”password” /rb

/A – means accept and install

/CSPWD –password you set when configuring the SSM package

/RB – reboot after the updates complete.

Set your command line options as necessary.  In my package I had no password and did not want to reboot so I just used /A.  Now when deploying your image select this newly created application.  After MDT finishes installing Windows the Softpaq will be added along with any other applications you may have chosen. 

In my MDT setup I went one step further and used a Make and Model query to automatically assign any HP Elitebook 8460p or 2560p this Softpaq.  This ensures that each time these model laptops are imaged they will receive this application without worrying if the tech forgot to assign it.

Categories: Deployment, HP Tags: ,
%d bloggers like this: