This is basically a 32-bits/64-bits problem: The printer is on a 32-bits server and is being accessed by a 64-bits client. Any attempt to install this printer fails because the driver being offered by the 32-bits print server is incorrect, since it's offering a 32-bit driver.
See this article for installing 64-bits drivers on the client machine:
How to Install HP Printer Drivers In Windows 7 - Inbuilt Drivers
The idea is to install a fictional printer on Windows 7 using the correct 64-bits driver, then convert it to a network printer.
You should proceed as follows:
- Install 64-bit printer driver for the client machine, as in the above link,
as a local (not network) printer. If, during installation, you are prompted to connect the printer to your computer, choose the option to proceed with installation without connecting the printer. Install to LPT1 (default) only. (port change is done after install completes in Steps 5 & 6)
- After installation completes, open the Printers applet from the Windows 7 Control Panel.
- Right-click on the new printer and choose Properties.
- Go to the Ports tab.
- Click Add Port…, select Local Port, then click New Port…
- For the port name, enter exactly the network path and share name of your printer. For example
\\Windows2000\HP LaserJet 5Si
, Click OK, and double-check that this new port is selected with the checkbox next to it.
- Click OK to close the printer properties.
The above was written with a Vista machine in mind, so please adapt the procedure to Win7 wherever necessary.
I had a similar problem.
Windows 7 64-bit with canon pixma 4500 which I wanted to share with Vista 32-bit.
Printer worked under Windows 7, connected to the Vista laptop also, but wouldn't share.
I downloaded the canon driver (NOT the add-on module) from canon for 32-bit Vista to the Windows 7 PC.
It comes as a selfextracting executable, but this will not run on Windows 7 64-bit.
Exctract it using winzip.
You'll end up with a driver folder in which you find the .inf file (in my case ip4500.inf).
It should be possible to add it as a driver for the x86 architecture through start->devices and printers, select you printer, rightclick, select printer properties and then enable the sharing options and select install additional drivers.
Click on x86 and press OK. Point to the location of the inf file and press ok.
The 32-bit printer driver should be added to your Windows 7 64-bit.
I say 'should' as in my case it did not work immediately.
Instead of installing, Windows 7 could not find the proper driver (in my case for 'Canon Inkjet ip4500 series').
To solve this, use notepad to edit the .inf file of the downloaded driver.
In it, there are 3 locations where the printer is described as 'Canon ip4500 series'.
Add the word 'Inkjet' to it at the right place and try again.
It worked for me.
Apparantly, Canon or Microsoft had been so 'wise' to rename the printer from 'Canon ip4500 series' to 'Canon Inkjet ip4500 series'. Windows 7 is so 'smart' to look for an extra driver only on your local PC (rather than find it the same way Windows update will find it) and only based on the (renamed) printer name in the Windows 7 driver (rather than the key provided by the printer itself).
Best Answer
All laser printers support basic PCL5e or even PCL6. If you are only printing basic jobs (no double-sided, no multiple paper sizes), then I would just use any old HP LaserJet driver.
When you add a new printer, choose from the list of built-in drivers and choose HP then choose something like the HP LaserJet 5si (We use this driver at work for programs that manipulate the PCL stream). That will install Windows' standard PCL driver and it should work just fine.