This worked for me in windows 7 professional 32bit SP1. Fresh install. I like my printer, I have used it for many years under both linux and windows and I had no intention of throwing it away. I am pleased I have found a way to make it work, I would have surely never bought HP again otherwise.
How to make a HP LaserJet 1005 series work in windows 7 32bit
1. download the printer driver HP LaserJet 1005 Host Based Driver v 5.51.2103.0 released 6 Oct 2003
Right now it can be found here: http://h20000.www2.hp.com/bizsupport/TechSupport/SoftwareIndex.jsp?cc=us&prodNameId=214539&prodSeriesId=240170&swLang=8&taskId=135&swEnvOID=228
It is named lj1005hostbased-en.exe - md5sum 428274e8060e830aeaf1acf06f10a398
2. Extract the printer driver to a folder. (It is a winzip self-extract executable)
3. Go to the printers page and "Add a new printer". It will ask you to select a port, but not an USB because USB devices are automatically detected. Scroll down and select "Virtual USB port" (not sure about the naming but you'll find it)
4. In the installation of this virtual-usb connected printer you can say "I have the driver". Click on the button, point the printer dialog to the driver folder and select the .INF file in the directory (there are two, I used the first one). You will successfully install a second printer named "HP Laserjet 1005 series"
5. Now right click the real printer, which has the same name but has the warning triangle because it needs "troubleshooting" - it has no associated driver. Select Troubleshoot. It will look for drivers. Skip looking online it is just a waste of time. NOW IT WILL FIND THE DRIVER YOU INSTALLED FOR THE VIRTUAL PRINTER. CLick OK.
6. The danger triangle disappears, the virtual-usb printer with the same name disappears and you are lef with a printer named HP Laserjet 1005 series which... works!
Cheers.