Friday 17 January 2014

HP 3D Driveguard 6 in SCCM OSD Windows 7 x64 Task sequence

Back again with this issue, HP have released a new version of driveguard and this version has even more problems than the previous.It's taken me a bit of time but I've had to figured this out all over again :)

At the moment this guide works with the following models:

HP Elitebook 820 G1
HP Elitebook 850 G1


It most likely will work with many more, as HP tend to release a driveguard update every new generation of device. For this package I'm using sp64934.exe. If you are trying to automate an older version, see my other post.

Step 1) Download SP64934.exe from the HP support website.

2) Extract sp64934.exe with Winrar or 7-zip. Inside you will find another setup.exe file.




3) From an elevated command prompt, Extract the Installshield setup by running:

setup.exe /a /s /v"/qb TARGETDIR=c:\test\

You are now left with an MSI based setup in this folder:

  

4) Copy these files to your SCCM Distribution share and create a package with these files.




5) Within the package create a program “Install HP 3D Driveguard”  with the following command line:

Msiexec /i “HP 3D Driveguard.msi” /qn Reboot=ReallySuppress

6) Download Visual C++ Redistributable for Visual Studio 2012 Update 4 from here
http://www.microsoft.com/en-ca/download/confirmation.aspx?id=30679

Put this file inside your package source.

7) Create a new program in your package call “Install MS Visual C++ Redist 2012” with the following command line:

vcredist_x64.exe /install /quiet /norestart

 

8) Add to your task sequence as two separate steps – run the Visual Studio C++ first, then the driveguard. remember to use a WMI query to filter the install.












 9) import the "HP Mobile Data Protection Sensor" Driver to your driver package for the model you intend to build. You will find this in accelerometer.inf in the "Drivers" folder in extracted MSI files.

Now when you run the MSI, the drivers will already be present on your system and you will simply be installing the service to go along with them.

That's it! If this post helps you, please give me a +1 thanks!
 


21 comments:

  1. Hi,

    I am really struggling with this have gone through your document 3 times a all seems to work apart from the install of the 3d drive gaurd from msi. I am getting an error 1722 when installing. is there any chance you can send me your extracted MSI file?

    Great document BTW.

    ReplyDelete
  2. Hmm, an error 1722 seems to be a generic installation failure code. Perhaps a missing prereq that I'm unaware of? You could test by installing the program manually, check what it tries to install (view programs and features and look for newly installed software /updates) then remove it, reinstall using SCCM and see if it still errors. If another prereq was installed then maybe it also needs to be included on your build.

    I just checked and found a typo at step 3, now amended. I just repeated following the guide and it seems to still work OK for me. Here is a copy of the files I generated. https://skydrive.live.com/redir?resid=158CFCC1FED03042%2139977
    Are you using the same version as I am in this guide? Where are you seeeing this error? in smsts.log? Does the same error occur if you install using the generated files manually by clicking the MSI? Maybe try turning on verbose logging when you run the MSI eg: msiexec.exe /i “HP 3D Driveguard.msi” /L*V "C:\3ddriveguard.log"

    Just a few suggestions. Hope this is helpful.

    ReplyDelete
  3. I like your method of extracting the MSI by using the administrative install option. /a /s /v"/qb TARGETDIR=c:\test\


    Thought I would share how I extract MSI files out of HP's Softpaqs. Normally I run the SPXXXX.exe file, and let it extract to the C:\SWSETUP folder. From there, I navigate to C:\SWSETUP\SPXXXX and will run the extracted Setup.exe file

    I then wait a few seconds, normally when I see "Extracting HP Drive Guard.MSI", then I open the %TEMP% folder using Explorer.exe. If you sort by date created, you will find a new folder with a long random guid. If you browse to that folder, you can grab the extracted MSI and other files.

    You solution is cleaner, just thought I would throw out another way if people were interested.

    ReplyDelete
  4. Hi!

    Thanks for the post, but the command line for 3D DriveGuard you've specified won't work for me. For some reason in smsts.log I see "waiting job status notification", and the progress stops.

    If I launch that MSI localy on the notebook, a hard drive is blinking and it is understandable that something is installing. But after it stops blinking there's no new driver or software being installed.

    ReplyDelete
  5. Hi Senseless, sorry to hear that, I've retested this a couple of days ago and have it active in my production task sequence. The only suggestion i can offer is to enable logging for the MSI msiexec.exe /i “HP 3D Driveguard.msi” /L*V "C:\3ddriveguard.log" and see what the log says. In my environment I'm dealing with a fairly up-to-date gold image, maybe some newer update/prereqs could be missing and causing an issue?

    ReplyDelete
  6. Hi, Andrew.

    I'm struggling with HP 450 G0 notebook. I've run setup.exe /? command and dialog pop-up says that I should use "setup.exe /S /v/qn" but smsts.log says that there was an error. I can't restart OSD TS now because it's 00:45 right now, so I've changed it to
    "setup.exe /S /V/qn" cause I've read at the pop-up window that /V is for msiexec, only tomorrow I could check will it work for me or not. By the way the windows is very uncomfortable to read.
    In general DriveGuard won't install using DriverPack, just an inf file I mean, because driver isn't digitally signed. That the only problem left in my OSD. All other drivers could be installed using SSM but because of that driver I also must use another type of installation. There's also no inforamation on HP forums about it. Usually they say just use SSM.

    ReplyDelete
  7. Looks like the problem is that after I run EXE it extracts and launches MSI. I've read somewhere that TS don't like when one programm calls another to Install they were struggling with Adobe Flash. In my case after I run MSI with log file it says that

    "CustomAction InstallDriver_64 returned actual error code -1 (note this may not be 100% accurate if translation happened inside sandbox)
    MSI (s) (2C:18) [10:59:18:013]: Product: HP 3D DriveGuard -- Error 1722. There is a problem with this Windows Installer package. A program run as part of the setup did not finish as expected. Contact your support personnel or package vendor. Action InstallDriver_64, location: C:\Program Files (x86)\Hewlett-Packard\HP 3D DriveGuard\Driver\, command: "C:\Program Files (x86)\Hewlett-Packard\HP 3D DriveGuard\Driver\hpInstDrv64.exe" "C:\Program Files (x86)\Hewlett-Packard\HP 3D DriveGuard\Driver\accelerometer.inf" /installdrv

    Error 1722. There is a problem with this Windows Installer package. A program run as part of the setup did not finish as expected. Contact your support personnel or package vendor. Action InstallDriver_64, location: C:\Program Files (x86)\Hewlett-Packard\HP 3D DriveGuard\Driver\, command: "C:\Program Files (x86)\Hewlett-Packard\HP 3D DriveGuard\Driver\hpInstDrv64.exe" "C:\Program Files (x86)\Hewlett-Packard\HP 3D DriveGuard\Driver\accelerometer.inf" /installdrv"

    Now testing an option Program Restarts Computer with EXE file as it shown here http://kjaerit.com/?p=273 . Hope it helps, If not I'll test an MSI with this option or else I have no idea what to do. If it was a software it is not a problem but it's a driver so I need to install it correctly.

    ReplyDelete
  8. Yeah, I've never managed to get any HP softpaqs to work with using the built in switches. As you said, the trouble is they are essentialy just compressed folders with a wrapper. I had very similar issues with the bluetooth driver and the hp hotkey support. Just to double check, I'm using SCCM 2007r3 - are you the same?

    Unfortunetly I don't have the 820G1 to test anymore (gone out to a user) but looking at your log above it does look like it expects another part of the installer to run and something is missing. I can't really see how the post you mentioned would work to be honest - even when the program extacts to C:\Swsetup it doesn't extract the full contents via this method. Looking in the intallsheild setup.ini it does only list "prereq0=_vcredist64.prq" and "prereq1=_vcredist64.prq" so I'm visual C++ in either 32 or 64bit should be the only prereqs.

    The only other post I can find relating to error 1722 on 3d driveguard is this one for windows 8.1 http://h30434.www3.hp.com/t5/Notebook-Operating-Systems-and-Software/HP-3D-DriveGuard-not-working-after-Windows-8-1-Upgrade/td-p/3063187
    in this case it seems to be a message relating to visual C++ runtimes.

    ReplyDelete
  9. Looks like I just did it.
    I've defeated that driver installation, but now the problem is that I need to permanently disable signed driver verification during TS. Because the driver installs during TS but because of that feature is on it deletes the driver and it couldnt be installed in OS. After I manually installed it and disabled Signed driver verification driver works fine. Looks like such problem is with the Bluetooth driver too because it installs only after I manually point on a Ralink folder in program files.

    How to permanently disable Driver signing verification feature during TS? After I'll manage with that I could post a command line that worked for me.

    ReplyDelete
  10. Ah that may explain a few things, I Just doublechecked my driver package I created for the 820G1 and found it contained the "HP Mobile Data Protection Sensor" driver. It looks like my system already has the actual driver installed during the apply drivers phase, but then all the MSI is doing is layering on the programs required for the service to run. I don't have "do unassigned drivers in versions of windows where this is allowed" ticked on the driver package though.

    Generally when I create a driver package for a build I ususally extract all the .exe files and point the driver wizard to the location i extacted everything, then build it into a package. I must have also extacted the 3ddriveguard "accelerometer.inf" and added this to my pack.

    ReplyDelete
  11. I'm using 4.00.6487.2000 version which is R2 as far as I remember.
    As you suggested I've created a driver package to Install MS Visual C++ Redist 2012 using your guide and it installs fine.
    I've just read few articles, the finest way is to sign the driver. I've never done it before. But I dont think that it will be easy.

    I've just thought about it too!

    First I've been trying to install all the drivers via Driver pack. But I've had some errors during OSD and the only stuff that I've left checked in Driver Pack was a LAN driver. And now I'm also checked "3D DriverGuardx 64" cathegory which contains "HP Mobile Data Protection Sensor" driver and actually I have two of them they just different versions v. 6.0.5.1 and 6.0.6.1 and one of them is disabled, If the TS won't work fine I'll disable another one and enable the previous one.

    If I'll manage a fine installation of those drivers via SCCM I think that HP should propose me to work for them. )))))))

    ReplyDelete
  12. Yes, confirmed, I have both 6.0.5.1 and 6.0.6.1 version in my package, but both are enabled. Maybe try leaving these on and use the MSI method above and hopefully yours will work also :)

    ReplyDelete
  13. Yepp. It finally worked!

    First we need to include an accelerometer (I also inclluded and enabled both) and the lan driver of course into the driver package. Install "MS Visual C++ Redist 2012" fully according to your guide and then using an MSI file install 3D DriveGuard. I've changed the MSI command line to (msiexec.exe /qn /i "HP 3d DriveGuard.msi" /forcerestart /l "C:\driveguard.log") and in parameters choose "Program restarts computer" I've decided to restart because with "ReallySuppress" it didn't work for me. So during TS it notebook restarts and the driver isn't installed but I was checking it before I included an accelerometer driver into the driver pack. I'm just tired to wait for an hour each time I've made any change in OSD TS so let it be as is because it's just work. :)

    +150000 XP!

    ReplyDelete
  14. Glad it's worked out for you. When I get a chance I'll update the guide with the new info about putting the drivers in your driver package first. Funnily enough an 840 G1 notebook passed across my desk today so it looks like I've got some more work to do on this.

    ReplyDelete
  15. Of course an updated guide will save somebody's time. Because I spent a lot of time solving this problem.

    ReplyDelete
  16. We have a 840 G1 and had a similar problem, where any combination of switches thrown at it would install successfully, but automatically restart.

    What I ended up doing that worked, was running the setup.exe that's extracted from the download, with the following command


    setup.exe /S /V"/quiet /norestart"

    When I took your approach, everything still worked on the version we need to use (http://h20566.www2.hp.com/portal/site/hpsc/template.PAGE/public/psi/swdDetails/?sp4ts.oid=5405363&spf_p.tpst=swdMain&spf_p.prp_swdMain=wsrp-navigationalState%3Didx%253D%257CswItem%253Dob_127112_1%257CswEnvOID%253D4059%257CitemLocale%253D%257CswLang%253D%257Cmode%253D%257Caction%253DdriverDocument&javax.portlet.begCacheTok=com.vignette.cachetoken&javax.portlet.endCacheTok=com.vignette.cachetoken), problem was the drivers didn't install due to being unsigned, which would leave uninstalled items in device manager and cause the accellerometerst.exe to bomb at startup.

    Appreciate the insight, wanted to post for this version in the event it helped anyone

    ReplyDelete
    Replies
    1. Thank you very much Derek. I can't tell you how happy I am right now. I have spent countless hours on trying to get this one going. But your approach seems to work for me. :)

      Delete
  17. Thanks for your help mate. Nice article. Solved my issue. I followed your instructions on SCCM 2012 and on machine HP 850 G1.

    Cheers.

    ReplyDelete
  18. I know this is older but I was struggling with this on our new 840 G3 laptops and this didn't work for me. It installed without errors but when you restart the computer it gives a bunch of missing DLL errors. Makes sense, since it installs pretty quickly compared to manually installing it.

    I ended up using the following from the Setup.exe file that is extracted from the softpaq. I didn't need to do any further extractions.

    Setup.exe /s /v"/qn REBOOT=REALLYSUPPRESS"


    Hope this can help someone.

    ReplyDelete
  19. This comment has been removed by a blog administrator.

    ReplyDelete