How to identify a specific printer driver you are using in Windows 10

I have to add a printer to a laptop. Other windows 10 units have the printer installed already (for a long time). Hp no longer supports this old printer (laserjet 5) and so it has recently been removed from the default install list or windows update. I would like to harvest the driver from the units that are already working and put it on the other windows 10 64bit that doesn't and can't get it. How can I identify which driver I'm using out of the hundreds present in the repository folder (“C:\Windows\System32\DriverStore\FileRepository”.)? I do not want to have to buy software to do this and the target machine is Windows 10 Home (cannot import using printermanagement).

HP in cahoots with MS dropped this from the default printer install list sometime in the last 6 months (See most recent comments noting this disappearance):

Update 3 December 2018: So far, the furthest progress I've made has been with CraftyB's answer. Here is the output from his PowershellOutput instructions. It identified the .inf file for my printer as prnhp001.inf. I don't think this is a "default driver" as some have suspected. Also perhaps worth noting is this is purely a network printer on my home network.

Update -- Mission Complete. Using CraftyB's answer, I took the entire folder indicated in the "InfPath" results of his 2nd block of code and browsed there at the "Have Disk" prompt during install and it worked. For those who many not have a working pc to harvest the driver from in order to get their laserjet5 working on Windows 10, I provide them here.

9

8 Answers

I would personally suggest trying to use powershell:

Identify the name of the printer by using this cmdlet:

get-printer

This will list the names of the printer and the corresponding driver.

Now to use the printer name to get the driver locations:

$Printer = get-printer <name of printer> | Select *
get-printerdriver $printer.drivername | select *

Replace name of printer and remove the angle brackets, if the name has a space in it please put in double quotes - "name of printer".

This will produce a list that will show you the locations of the drivers and dependant files under the following properties:

Path
DependentFiles
InfPath

To get the full list of dependant files:

Get-PrinterDriver $Printer.DriverName | Select DependentFiles -ExpandProperty DependentFiles

The below is a script that will copy all the files above, you just need to insert the name of printer and it will put the files into "c:\DriverBackup\'name of printer'".

$PrinterName = "Name of printer"
$DriverBackupLocation = "c:\DriverBackup\$PrinterName"
mkdir $DriverBackupLocation
$Printer = Get-Printer $PrinterName | Select *
$PrinterDriver = Get-PrinterDriver $Printer.DriverName | Select *
Copy-Item -path ($PrinterDriver.InfPath | Split-Path -Parent) -Destination $DriverBackupLocation -Recurse
5

According to the hp laserjet 5 printer driver for windows 10 there is a comment that indicates a specific HP Universal Print Driver worked to resolve this problem. . .

  • The driver file is "upd-pcl5-x64-6.1.0.20062.exe", I could not find it on HP's support site, so I did a search, and found several locations listing this universal driver set. I found a site that didn't charge, but did plant a cookie ... which I will now have to elliminate. BUT, IT WORKS!!! I can't guarantee that it will work for you, but I suspect that it will work for several PCL printers "no longer supported".

A few things to mention specifically. . .

  1. That post suggests using theupd-pcl5-x64-6.1.0.20062.exedriver package in particular

  2. The latest version on the HP FTP site seems to be upd-pcl6-x64-6.6.5.23510.exe so you might try that if the suggested driver package doesn't resolve.

  3. If all else fails, go right to the HP FTP website to the /UDP folder and download any of the available package versions from there and go through one by one in case any do work

    • This may be a time consuming and tedious process, but potentially a helpful one that could possibly work to resolve the problem using a trivial process of elimination tactic.

    enter image description here

printer server

  1. Click on print server properties

drivers

  1. Then goto drivers.
  2. Click Properties

and there it is, the driver path.

Note: The driver path is scrollable! If left click on the text, and hold the mouse down you can drag to the right and it will scroll over revealing the rest of the path.

enter image description here

1

If you persist in struggling to get it to work in Windows (despite the very generous bounty), you could buy a cheap Raspberry pi and install CUPS on it. The Laserjet 5 is listed as perfectly working with Linux (and equally macOS):

HP Laserjet 5 in the OpenPrinting database

You should then be able to add it as an IPP (internet printing protocol) printer and print over the network from your Windows clients. Here are more verbose instructions for printing to a CUPS printer from Windows:

Try the following way:

  1. Open Run, type control admintools, click Enter.

  2. Control Panel\System and Security\Administrative Tools->Printer Management->Printer server->local printer->Action->select Export printer to a file

enter image description here

  1. In laptop, copy this printer driver, when adding a printer we select the printer driver.
3

You can use DISM to export all currently-installed drivers:

dism /online /export-driver /destination:C:\drivers
1

A very simple answer, and not a long and complicated one, but...

You can try Double Driver. If your device is not using the default print driver, then it'll show up on the list, and you can then export and restore it using the tool.

2

Forensics : Locating the driver .inf file and installation files via registry

You may find the name of the .inf file in the registry under the key
HKEY_LOCAL_MACHINE\DRIVERS\DriverDatabase\DeviceIds\{PRINTR-NAME}.
You will find there entries whose name is that of the file-name. For my printer the name was oem15.inf.

The .inf file is then found at C:\Windows\INF\oem15.inf and can be copied from there.

Going then to the keyHKEY_LOCAL_MACHINE\DRIVERS\DriverDatabase\DriverInfFiles\oem15.inf, you can extract the value of (Default), which for me wasmx920p6.inf_amd64_8ba71b07bf815680.

The driver's files can be found in the folder
C:\Windows\System32\DriverStore\FileRepository\mx920p6.inf_amd64_8ba71b07bf815680.

These files, together with the .inf file, should be enough to install the driver.

Automatically extracting the .inf and driver files

A utility that worked for me for exporting the driver of my printer:

  • Download the old but still working and open-sourceDriverBackup!
  • Unpack into a folder
  • Execute DrvBK.exe and wait for it to populate the list
  • Unselect everything, which I did by right-click on any entry and selectingCancel selection
  • Open the Printers section
  • Tick the printer.
    On the lower pane you will see displayed the name of the .inf file of the printer, that you can find in C:\Windows\INF.
  • Click Start Backup
  • Enter suitable data in the dialog of "Backup selected devices" including the path to where to store
  • Click Start Backup!

When it finished I had a .inf file and lots of DLLs and other files, which I assume were my driver's files. (But I didn't try to install them, just in case.)

14

You Might Also Like