Wednesday, March 24, 2010

Printing to a shared XP printer from Vista or Win7

Ran into a situation this morning that probably isn't that uncommon, but I could only solve it by combining information from several places- none of which had the full easy solution.

The problem is we have an old printer (with only a parallel port) hooked up to an old XP-based computer. It's shared on the network, and the firewall is set to allow file and printer sharing, so I thought all was good. But when I go to a Vista or Win7 machine and try to connect to it, I get an "Access Denied" error. Figuring it was a driver issue, I went to the XP machine and tried to add the appropriate drivers, but you can only provide drivers for older OSes, not newer ones.

The answer, I finally figured out, is pretty simple, and doesn't require you to change what computer the printer is hooked up to, even temporarily.

1) Go to your Vista or Win7 machine

2) In your "Printers" folder, click "Add a printer".

3) The wizard asks what type of printer you want to install. Choose "Add a local printer". (Yes, I know it's technically not a local printer, but if you choose "network printer", it'll try to pull the drivers from the XP machine, as before, giving you an error)

4) The wizard asks what port it should use. Choose "Create a new port", and choose "Local Port" as the "Type of port".

5) When it prompts you for the port name, type in the computer name and printer share name, in UNC format: \\computer\printer (replacing "computer" with the computer's network name, and "printer" with the printer's share name). This is what tricks the computer into believing a network printer is actually a local printer.

6) Proceed through the "Install the printer driver" screen as usual, choosing the Windows-provided driver from the list, from Windows update, or from copy of the driver you've downloaded with the "have disk" button.

7) Name the printer anything you want (or keep the default name)

8) Now the drivers will be examined and installed automatically by Windows. If they're not signed drivers, it will pop up the usual warnings. That would happen even if you were installing a true local printer, so do whatever you'd do at those dialogs if it were a local printer.

9) Share the printer if you could then use the share from this machine to keep from having to do this with all your Vista/Win7 machines, but then you're requiring that TWO machines be available if you wanted to print from a third machine...since it would need to talk to your Vista/Win7 machine, which would in turn need to talk to the XP machine. It's probably more reliable to choose to not share the printer from the remote (Vista/Win7) computer.

10) Print a test page to confirm it worked, close the wizard, and you're done!

Hope that helps someone!

Labels: ,