My wife has Vista Home on her laptop. My desktop is running XP and our Canon Pixma iP4300 printer is connected to it so I have it set up to share printing jobs via our home LAN. Recently (probably after another of the endless stream of updates from MS) she started getting a printer error and she was unable to print. I tried deleting and reinstalling the printer. I could "see" the printer on the network but I couldn't reinstall it. Until I figured out what to do, I had her print her jobs to a PDF using CutePDF and printing it from my computer. I knew the problem wasn't from my end because I could still print from my laptop which runs Ubuntu Linux. Imagine that: I couldn't print from a Windows computer but I could from one running Linux.

Using Google, which is probably one of the most useful tools on the planet, I finally found a solution and thought I should share it with you. Here's what I did to reinstall the printer, then test print:
  1. Go to Control Panel --> Printers --> Add Printer.
  2. Click Add a local printer - That's not a typo - trust me.
  3. Click Create a new port, then Local Port followed by the Next button.
  4. In the text entry box enter a port name like this: \\PC name\Printer name where "PC name" is the network name of the XP computer or Network Share where you have the printer and "Printer name" is the network name of that printer. Be careful with the printer name especially. In your XP computer, go to Control Panel --> Printers and faxes --> your shared printer. Right click the printer and in the pop-up menu select Sharing... and verify the Share name.
  5. At this point, if you have access to Vista drivers use the Have disk button to access them. I used the Web update button and waited for a list of available drivers.
  6. Choose the manufacturer and printer model of the printer you are adding.
  7. After the printer is added, print a test page to make sure it works.