For years if we needed to install a printer that has a slightly different naming convention for different versions of Windows, we could modify .ini files in c:\windows\inf. Here's a specific example.
Windows XP and Server 2003 uses the name "HP Laserjet 4200 PCL 6" and that's the driver on our Server 2003 domain print server. In Windows 7 the naming convention is "HP Laserjet 4200/4300 PCL6".
In the good old days pre-Vista/7, we could modify the .inf file's entry. In Windows 7 and Server 2008, the file holding this entry is c:\windows\inf\prnhp002.in
f. The specific entry is:
"HP LaserJet 4200/4300 PCL6" = hpmcpap6.gpd.Win7,Hewlett-PackardHP_La4AE5,Hewlett-PackardHP_La8AB4,HP_LaserJet_4200/4300_PCL6 ; Hardware ID
Now when I modify that line to read as we need it...
"HP LaserJet 4200 PCL 6" = hpmcpap6.gpd.Win7,Hewlett-PackardHP_La4AE5,Hewlett-PackardHP_La8AB4,HP_LaserJet_4200/4300_PCL6 ; Hardware ID
.... so the PC's driver name matches the driver name on the print server (allowing us to map that printer on the PC) for some reason Windows 7 "Add a Printer" wizard (where you select the make and model of the printer to add) is still showing the OLD name "HP LaserJet 4200/4300 PCL6", even AFTER the .inf file is changed and the print spooler service is restarted.
What is the trick these days? We can't change the print server, so the naming change has to be made on the client PC. But our changes to the INF files are NOT being reflected in the list of available print drivers in the Add/Remove printers applet.