List Used Printer Drivers on Remote Machine

Basic Question
Is there a way to list all the printer drivers installed on a machine and flag the drivers that are NOT being used by an installed printer?

Also, is there a way to determine which printer is set as the default?

Background
A while back, we had an administrator push about 20 printer drivers to every machine in the organization, whether they needed them or not. His reasoning is beyond the scope of this question, but suffice it to say that now all our machines have a load of printer drivers they don’t need. That administrator is gone now, and no one else in the organization is as proficient with PowerShell. I have always been of the opinion that you only install what is needed, so I would like to see us remove all the un-needed printer drivers on every machine.

Thanks for any help that you can offer!

–Tom

The answer is partially. Since devices can have both system and user level installed printers, you could see system printers and then match up the drivers. To truly enumerate all installed printers you would need to manually mount and inspect all local user registry hives to determine what is in use. Back to the issue you are trying to solve, cleaning up drivers will save you very little space on the systems and is otherwise not going to improve your system posture (security or otherwise) and probably unnecessary (my 2 cents) [I work in cyber security]. I would definitely agree with the point install only what you need to minimize attack surface, but again that point is mostly moot with printer drivers.

Thanks for the response. I’m not actually concerned with drive space, or even security. I’ve just seen it be a support issue. I once had a case where an employee was unable to print anything from any application. She only had HP printers, but there was a Dell printer driver on the system that belonged to an old Dell printer that was no longer installed. I ended up doing a crash dump and found that it was the Dell driver that was corrupt. It’s been 6 or 7 years, so my memory may be fuzzy on this, but I believe that when a user prints, Windows enumerates all the drivers and printers. I was hitting the Dell driver and essentially just slamming into a brick wall. Ever since, I have been mindful of having installed drivers that are unnecessary.

That said, it sounds like it may be more trouble than it is worth.

–Tom