Hello World.

Hi there, I am Chris. Nice to meet you. I am a student living and working freelance in Berlin. Currently I am doing my Master's in IT Systems Engineering at Hasso-Plattner Institute in Potsdam. This is my blog.


How to share any GDI (and non-GDI) printer with Windows 7 64bit

Recently I switched to Windows 7 64bit. But unfortunately Kyocera does not provide any driver for their FS 720 printer which is a cheap GDI laser printer. GDI used to be a protocol allowing manufactures to sell their devices cheaper by omitting most computing parts and replacing it by software on the host computer. With Windows 7 GDI is no longer supported by Microsoft.

This guides describes how to use any GDI printer with Windows 7. For this solution you need another XP machine which is connected to the printer and in the same network as your Win7 machine. This XP machine has to have your printer ready set up with the manufactureres drivers. I happen to just use an old laptop and use Wake on LAN to not have it running all the time.

Follow Robert Harder’s Guide on how to share a Windows printer with a Mac – Steps 1 – 4. He describes how to share any printer as a PostScript printer using Unix’ LPR. I have used the Apple Color LW 12/660 PS driver as he suggests. If you want to connect you Mac refer to step 5.

Then, on your Windows 7 machine:

  1. Go to Control panel > Devices and Printers
  2. Right click > Add printer
  3. Choose a local printer
  4. Use an existing connection and keep the default LPT1
  5. In the driver selection dialog use Windows Update to obtain more drivers
  6. Select Generic > 35PPM PS
  7. Continue until you have a 35PPM PS printer installed. The test page does not need to be printed since it would fail anyway.
  8. Open your new printer queue by double clicking on it’s icon
  9. In the menu go to Printer > Preferences and select the Connections tab. Add a new connection:
    • Select LPR port (If you don’t have one install Unix printing services under Windows features in the Control panel)
    • Select “New connection”
      • LPD-Server: The IP address of your Windows XP machine hosting the actual printer
      • Printer or queue name: The name of your LPR printer on the XP machine, e.g. GhostscriptLPR in Robert Harder’s guide

Now your printer is set up. You might want to print a test page from Printer > Preferences dialog to verify that.

Changing your PPD file

Since PostScript drivers are device independent they use the PPD format to gather all device specific information. If your printer works just fine with the guide above you don’t need to do anything here. If you want to improve color printing, resolution, tray selection and other printer specific information you can update the 35PPM PS driver with your printer manufacturer’s PPD file.

Where to get my PPD file?

Sometimes you might find a PPD file on the manufacturers web page. An easier way is to copy the one bundled with your the printer driver you are already using. Robert Harder describes how he set’s up an Apple Color LW 12/660 PS named Ghostscript722C. The corresponding PPD file is this one:

c:\windows\system32\spool\drivers\x32x86\3\APLWCSB1.PPD

If you are using another PostScript driver you can find out about the corresponding PPD by printing a test page. It is listed as data file and you can look for it in the exact same folder.

Where to put my PPD file?

In the above guide I used a 35PPM PS driver on my Windows 7 64bit computer. It comes with a default PPD file:

c:\windows\system32\spool\drivers\x64\3\GMAAAS.PPD

You can replace this default one safely with the one of your actual printer driver from the XP host. Be sure to delete the GMAAAS.BPD in the same folder after replacing to let the driver create a new one. You might have to restart the spooler by restarting Windows to let the changes have an effect.

 

Note below: In case you haven’t guessed yourself: If you degrade your hardware to a toaster, it’s your fault, not mine.