Driver Automation Tool - Automate Driver Downloads & Packaging for SCCM/MDT

The script generates a PowerShell GUI to automate the processes of downloading, extracting and importing driver packages for Dell, Lenovo, HP and Microsoft systems.

 
 
 
 
 
4.8 Star
(69)
38,486 times
Add to favorites
System Center
10/22/2018
E-mail Twitter del.icio.us Digg Facebook
Sign in to ask a question


  • Proxy error Downloading product list
    1 Posts | Last post Thu 5:52 PM
    • Hi, we are in the process of moving over to the Modern Driver management solution and are having a little trouble getting the Driver automation tool to connect through our proxy. 
      
      I have input our proxy details and it seems to connect to http://www.scconfigmgr.com just fine but then fails to obtain the product list after, extrac from the log file:
      
      Proxy: Testing authenticated proxy server access to http://www.scconfigmgr.com/
      Proxy: Connected to http://www.scconfigmgr.com/ successfully
      Proxy: Global proxy settings set for web/bits transfers
      ======== Querying Model List(s) ========
      Info: Downloading Dell product list
      Info: Downloading Dell product cabinet file from https://downloads.dell.com/catalog/DriverPackCatalog.cab
      ======== Errors(s) Occurred ========
      Error: Cannot bind parameter 'ProxyList'. Cannot convert the "System.Net.WebProxy" value of type "System.Net.WebProxy" to type "System.Uri".
      
      This is happening for all manufactures using the tool, has anyone else come across this issue before?
      
      Thanks,
  • Models missing for lenovo machines
    2 Posts | Last post Wed 5:28 AM
    • Why cant i find models that are listed in the lenovo xml catalog with the Automation Tool? 
      ThinkPad E580.
      
      <Product model="E580" family="tp" os="win10" build="*">
      <Queries>
      <Types>
      <Type>20KT</Type>
      <Type>20KS</Type>
      </Types>
      <Version>ThinkPad E580</Version>
      <Smbios>R0PE</Smbios>
      </Queries>
      <Name>ThinkPad E580</Name>
      <DriverPack id="sccm" date="201806">https://support.lenovo.com/downloads/ds501931</DriverPack>
      <DriverPack id="WinPE 10">no winpe</DriverPack>
      <BIOSUpdate>DS501843</BIOSUpdate>
      <Tip/>
      
      
      
      I have tried different os version. 
      
      have you experienced this issue before ? Thanks in advance. 
    • i download DAT again and now it shows the right amount of devices.
  • Downloaded files do not extract
    2 Posts | Last post Tue 5:58 AM
    • It downloads the file and starts to extract to the temp file (can I set the temp folder somewhere?) but then it stops.
      
      Seems like the script doesn't know where the source folder is.
      
      
      ==================== Download DRIVER EXTRACT ====================
      Download: Expanding driver CAB source file: sp88652.exe
      Download: Driver CAB destination directory: C:\Drivers\Hewlett-Packard\Z240 Tower Workstation\Windows10-x64-7.2018 K 1
      Download: Extracting Hewlett-Packard drivers to C:\Users\<username>\Downloads\DriverAutomationTool\Temp\Z240 Tower Workstation\Win10x64
      Download: Using Hewlett-Packard silent switches: -PDF -FC:\Users\<username>\Downloads\DriverAutomationTool\Temp\Z240 Tower Workstation\Win10x64 -S -E
      Download: Waiting for extract process (Process: sp88652) to complete..  Next check in 30 seconds
      Download: HP driver source directory set to 
    • I'm having the same problem with a lot of my downloads. Have you found a solution for this one?
  • All Lenovo Models Driver Downloads fails with version 6.1.3
    8 Posts | Last post November 10, 2018
    • Hi,
      
      I can't Download any Lenovo Drivers with Driver Automation Tool version 6.1.3.
      Dell and other vendors works very well!
      
      I get an error message:
      
      Error:You cannot call a method on a null-valued expression.
      
      Joonas
      
    • I have the same issue in my environment. Is there a workaround for this?
    • Try Windows Server 2016. It should work with 2012 R2, but I still have issues with it.
    • Also having the same issue...
      
      <![LOG[Error: You cannot call a method on a null-valued expression.]LOG]!><time="14:37:49.900+0" date="11-01-2018" component="DriverAutomationTool" context="*****\*******" type="3" thread="4508" file="">
      <![LOG[ ]LOG]!><time="14:37:49.931+0" date="11-01-2018" component="DriverAutomationTool" context="*******\******" type="3" thread="4508" file="">
      <![LOG[Info: Driver package URL - 122 123 124 125 ]LOG]!><time="14:37:49.966+0" date="11-01-2018" component="DriverAutomationTool" context="***********\*******" type="1" thread="4508" file="">
    • I'm getting the same error when trying to download Lenovo drivers, and with the Lenovo Automation Tool, on Windows 2016, MDT 6.3.8450, ADK 10.1.16299.
      
      Error seen from Lenovo tool:
      You cannot call a method on a null-valued expression.
      At E:\Source\Lenovo\LenovoAutoDownload.ps1:1927 char:5
      + ...             $farthestEXE = $tags.text.lastIndexOf(".exe`"", $currentI ...
      +                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          + CategoryInfo          : InvalidOperation: (:) [], RuntimeException
          + FullyQualifiedErrorId : InvokeMethodOnNull
      
      You cannot call a method on a null-valued expression.
      At E:\Source\Lenovo\LenovoAutoDownload.ps1:1933 char:6
      + ...             $farthestURL = ($tags.text.lastIndexOf("`"URL`"", $farthe ...
      +                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          + CategoryInfo          : InvalidOperation: (:) [], RuntimeException
          + FullyQualifiedErrorId : InvokeMethodOnNull
      
      You cannot call a method on a null-valued expression.
      At E:\Source\Lenovo\LenovoAutoDownload.ps1:1935 char:6
      + ...             $anchors += ($tags.text.Substring($farthestURL + 7, $fart ...
      +                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          + CategoryInfo          : InvalidOperation: (:) [], RuntimeException
          + FullyQualifiedErrorId : InvokeMethodOnNull
    • Could you please let me know the environment you are running this under and if you are invoking the exe or PS1 under a different user account?
    • I'm running the exe as a user who is a member of the Domain Admin's group, I am not running as administrator. I've tried running as admin and the behavior is the same, "Error: You cannot call a method on a null-valued expression"
      
    • I have reached out to Lenovo on this issue. There was a mark up change on their website which resulted in the code having to be changed to use an IE session to parse their site. If you have policies that block javascript then you will run into issues unfortunately. 
      
      Hopefully they will publish their links in the XML feeds in the coming future.
  • Wrong BIOS package selected
    1 Posts | Last post November 09, 2018
    • I am getting 'BIOS package list contains multiple matches, attempting to set task sequence variable' in the log file for Dell Models OptiPlex 9010 and OptiPlex 9020, not the AIO models. The BIOS update for the AIO models are selected and the update fails. I have deleted the BIOS packages for the AIO models to make it work for now but I would guess that when I attempt to update the AIO models, it will fail.
  • feature request : generate xml file without downloading
    2 Posts | Last post November 09, 2018
    • Hi Maurice,
       
      I've started implementing xml offline system using Invoke-XMLApplyDriverPackage.ps1. Looks like I got it working. But now I need to generate the xml file(s) for our local support staff. 
      
      I already downloaded all driver packs for SCCM. So I wonder if there isn't a better way to generate the XML file now? 
      
      Could you implement that in e.g. an action on the "ConfigMgr Package Mgmt" tab? Select the required driver packs and as action "generate the xml"? 
      Then we don't have to download all the packs again. I can just make those available by copying from my repository folder. 
      Would save us even more time! 
      
      FYI: did a test with an HP Probook 640 G2. Win7 drivers. 
      I have those in SCCM, latest version 5.00 A 1. This time I selected to get the download and XML generated. Monitored the log and was actually hoping to see it skip the download since the files are already available. Unfortunately it downloaded the cab again. I admit that I don't keep the cab file but I do keep the extracted contents which is then also copied into the package source location. 
      
      Thanks a lot for considering it!
      
      Maarten     
    • Hi Maarten,
      
      In the tool you should select the XML option when downloading the files. Any issues with it, drop me an email.
      
      Maurice 
  • What am I doing Wrong?
    2 Posts | Last post November 08, 2018
    • I have been trying to get my driver packages into SCCM with the tool for about a week now.  I have set all the common settings to my SCCM server, selected the ConfigMgr - Standard Package, DOwnload tyep- Driver, Operating System windows 10, and 64 bit.  It download the drivers and places them the \Download\Path that I have created, and the data in the \package\path is identical to the data in the \download\path.  Next I go over to the COnfigMgr Package Managment screen and then I select all and select drivers and Production and in the actions drop down, I select Move to production.  But they never show up in my COnfig Manager.  Is there a trick to this?
      
      Thanks for the help in advance.
      
    • Somehow I got it working.
      
  • Cannot retrieve Lenovo known models
    2 Posts | Last post November 05, 2018
    • I have been having this problem for a while now, when i select known models and choose Lenovo, the application crashes. The log shown that it is adding a few known models, and then stops. No problem with the same procedure, just with Dell. When deselecting known models, i get all Lenovo models in the list. Anyone else has this particular problem?
    • This is what the log says:
      
      <![LOG[======== Querying Model List(s) ========]LOG]!><time="09:51:08.249+60" date="11-05-2018" component="DriverAutomationTool" context="VKNET\adminkashn" type="1" thread="5968" file="">
      <![LOG[Info: Reading driver pack URL - https://download.lenovo.com/cdrt/td/catalog.xml]LOG]!><time="09:51:08.378+60" date="11-05-2018" component="DriverAutomationTool" context="VKNET\adminkashn" type="1" thread="5968" file="">
      <![LOG[Info: Found 32 Lenovo model driver packs for Windows 10 1803 64 bit]LOG]!><time="09:51:08.525+60" date="11-05-2018" component="DriverAutomationTool" context="VKNET\adminkashn" type="1" thread="5968" file="">
      <![LOG[======== Querying Model List(s) ========]LOG]!><time="09:57:29.341+60" date="11-05-2018" component="DriverAutomationTool" context="VKNET\adminkashn" type="1" thread="5968" file="">
      <![LOG[Info: Adding ThinkPad X240 to Lenovo known models]LOG]!><time="09:57:34.849+60" date="11-05-2018" component="DriverAutomationTool" context="VKNET\adminkashn" type="1" thread="5968" file="">
      <![LOG[Info: Adding ThinkPad X1 Carbon 2nd to Lenovo known models]LOG]!><time="09:57:36.097+60" date="11-05-2018" component="DriverAutomationTool" context="VKNET\adminkashn" type="1" thread="5968" file="">
      <![LOG[Info: Adding ThinkPad X250 to Lenovo known models]LOG]!><time="09:57:36.284+60" date="11-05-2018" component="DriverAutomationTool" context="VKNET\adminkashn" type="1" thread="5968" file="">
      <![LOG[Info: Adding ThinkPad T540p to Lenovo known models]LOG]!><time="09:57:37.571+60" date="11-05-2018" component="DriverAutomationTool" context="VKNET\adminkashn" type="1" thread="5968" file="">
  • All Microsoft Models fails with download
    1 Posts | Last post October 31, 2018
    • Hi,
      first of all many thanks for this great tool. For Microsoft Surface it´s not working, it seems he tried to load a not splitted string, but found nothing in your ps1. Can be the xml on your WP with a wrong format? that i get in the cmtrace:
      
      ==============================================================================
      Info: Reading Driver Pack URL - http://www.scconfigmgr.com/wp-content/uploads/xml/DownloadLinks.xml
      
      ConfigMgr: URL found: https://download.microsoft.com/download/4/1/6/416D7D4F-64D9-4633-A5CC-922A941854FD/SurfacePro_LTE_Win10_15063_1804807_0.msi https://download.microsoft.com/download/4/C/7/4C7DA85D-03DE-4B89-B8E0-386437331C46/SurfacePro_Win10_16299_1806007_3.msi https://download.microsoft.com/download/4/C/7/4C7DA85D-03DE-4B89-B8E0-386437331C46/SurfacePro_Win10_16299_1806007_3.msi
      
      ConfigMgr: Latest driver revision found - 1806007
      
      ConfigMgr: Checking ConfigMgr for driver packages matching - Drivers - Microsoft SurfaceProLTE - Windows 10 x64
      
      ConfigMgr: New driver package detected - Processing
      
      ConfigMgr: Creating SurfaceProLTE download folder
      
      ConfigMgr: Downloading SurfacePro_Win10_16299_1806007_3.msi driver cab file
      
      ConfigMgr: Downloading from URL: https://download.microsoft.com/download/4/1/6/416D7D4F-64D9-4633-A5CC-922A941854FD/SurfacePro_LTE_Win10_15063_1804807_0.msi https://download.microsoft.com/download/4/C/7/4C7DA85D-03DE-4B89-B8E0-386437331C46/SurfacePro_Win10_16299_1806007_3.msi https://download.microsoft.com/download/4/C/7/4C7DA85D-03DE-4B89-B8E0-386437331C46/SurfacePro_Win10_16299_1806007_3.msi
      
      BitsTransfer: Checking BITS background job
      
      ConfigMgr: Reported file byte size size: 
      
      ConfigMgr: Downloaded file byte size:  0
      
      ConfigMgr: Driver revision: 1806007
      
      ConfigMgr: SurfacePro_Win10_16299_1806007_3.msi File download failed
      =========================================================================
      
      Many thanks for fixing that
  • 6.1.3 Issue MS Surface Book 2 15
    1 Posts | Last post October 29, 2018
    • Hi Maurice,
      
      i found a issue for the surface book devices.
      If i select Windows 10 1709 for Surface Book 2_15 the tool download the 1703 msi file.
      Also when i select Windows 10 1803 its download the 1709 msi file.
      
      Here are the Logs:
      -for 1709
      [Info: Operating System specified: Windows 10]
      [Info: Operating System architecture specified: x64]
      [======== Processing Microsoft SurfaceBook2_15 Downloads ========]
      [Info: Windows 10 build 10.0.16299.15 and version 1709 identified for driver match]
      [Download: URL found: https://download.microsoft.com/download/9/4/F/94F7AED2-D3ED-4A60-AB94-A0D078FE6DF6/SurfaceBook2_Win10_15063_1802509_3.msi]LOG]
      
      -for 1803
      [Info: Operating System specified: Windows 10]
      [Info: Operating System architecture specified: x64]
      [======== Processing Microsoft SurfaceBook2_15 Downloads ========]
      [Info: Windows 10 build 10.0.17134.1 and version 1803 identified for driver match]
      [Download: URL found: https://download.microsoft.com/download/9/4/F/94F7AED2-D3ED-4A60-AB94-A0D078FE6DF6/SurfaceBook2_15in_Win10_16299_1802909_2.msi]LOG]
      
      Axel
1 - 10 of 319 Items