Using DeployAnywhere on HP 11th-gen i3 and get a BSOD STOP 0x0000007B error
search cancel

Using DeployAnywhere on HP 11th-gen i3 and get a BSOD STOP 0x0000007B error

book

Article ID: 375708

calendar_today

Updated On:

Products

Deployment Solution Client Management Suite Ghost Solution Suite

Issue/Introduction

Get a BSOD STOP 0x0000007B on a HP 11th-gen i3 using Hardware Independent image and use DeployAnywhere. The drivers in DriverDB were sufficient for the device when ran DeployAnywhere with /eval parameter

Environment

DS 8.7+

GSS 3.3 RU10+

Cause

Intel VMD driver

Resolution

WORK AROUND

Using Deployment Solutions:

  • Locate the driver pack from the OEM manufacturer
  • Run from the target machine to get the model name: wmic csproduct get name  
  • uncompress the drivers to a directory on a server with the wmic command output
  • Create a hidden password file with the following step
    •  From the Notification Server cd to: C:\Program Files\Altiris\Deployment\BDC\bootwiz\Platforms\WinPE\x64\Optional\Boot  ( for Winpe c64)
    •  Open command with elevated privileges and enter the Following: Loginw.exe –g <user>:<password> –f <file name>.pwl NOTE: do not use domain\user. This will create a pwl file in the same directory
    •  After that we need to add the pwl into PE, copy the pwl to C:\Program Files\Altiris\Deployment\BDC\bootwiz\oem\DS\winpe\<Arch>\Base
  • update the BDC package: Go to 'Windows Task Scheduler' and run: NS.Package Distribution Update
  • Then rebuild your preboot configuration ( this will take about 20-30 minutes )
  • Create a Script Task:

@ECHO OFF
REM do a wmi query to get the info we want and put it in a variable
FOR /F "tokens=2 delims==" %%A IN ('WMIC csproduct GET Name /VALUE ^| FIND /I "Name="') DO SET machine=%%A
ECHO Computer model:"%machine%"

Under 'Advanced' make sure the script run under 'System' permission

  • Create another script task to mount to a location on server
  • Loginw.exe -f x:\<file name>.pwl -c <server> -d <domain> -t 30 
    net use Q: \\<server name>\c$
     ( <server> will be shortname NOT FQDN and the <domain> will be the  server domain)(ex: Loginw.exe -f x:\mypassword.pwl -c TestServer -d example.local -t 30)
  • run create a script task to run dism to inject the drivers
  • DISM /Image:C:\ /Add-Driver /driver:"Q:\drivers\%machine%\" /recurse  ( assuming the drivers are in c:\drivers\<wmic name> on the server )

the C:\ should be the partition windows is installed on. To verify run after image is deployed:

diskpart

select disk 0

list volume

C should be under the Ltr column. If it is other than C change the the DISM command to reflect the Ltr shown

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

To test this get the endpoint into automation. At the root of x: is the Loginw.exe where you can create a pwl file. Just run the first two script tasks then manually ( get machine model and script to mount to the drivers location ) then run the DISM command.

 

Also note, when you run the Script task to identify the model number and it runs successfully go into the result and you can see the computer model that wmic outputs

 

Your deploy image job should look like this:

  • boot to PXE or Automation Folders
  • deploy image
  • script task to get machine model
  • script task to mount to the drivers location
  • script task to run DISM
  • boot to production

 

If you Have multiple models of computers this method will identify its model number and cd to the directory of that model where the drivers are located

 

Using Ghost Soluton Suite:

We already use the loginw and a pwl file to mount to the express share

Drop the drivers in c:\program files (x86)\altiris\express\deployment server\drivers\<wmic output>\ directory

All you need to do is use the create a script task to locate the computer model: 

@ECHO OFF
REM do a wmi query to get the info we want and put it in a variable
FOR /F "tokens=2 delims==" %%A IN ('WMIC csproduct GET Name /VALUE ^| FIND /I "Name="') DO SET machine=%%A

 

Then create another script task that runs the DISM Command: 

DISM /Image:C:\ /Add-Driver /driver:"M:\drivers\%machine%\" /recurse ( assuming your mount to express is M: )

Your job will look like: 

  • deploy image
  • script task to locate computer model
  • script task to inject drivers

OR if you do not want to do the automated approach and not use the wmic command you can just create your own directory name for the computer  in the express share ( ex: HP_GEN4) and drop the drivers in the directory. Then use the DISM command pointing to that directory

EX: DISM /Image:C:\ /Add-Driver /driver:"M:\drivers\HP_GEN4\" /recurse ( assuming your mount to express is M: )

NOTE:  all task are to be performed while in automation environment and c:\ must be the drive the image created on deployment

 

 

 

Additional Information