Skip navigation
Currently Being Moderated

Changing a PPD file installed via a .inf file

Oct 25, 2011 2:14 PM

I have a .inf file which I use to create printers.  If I change the contents of one of the PPD files referenced by the PPD file, and then re-install the printer, Windows 7 ends up using the original PPD file instead of the new one.

 

What do I have to do to get Windows to realize that the PPD file needs to be changed?

 

BTW, after all these years, the PPD strategy still rocks!

 
Replies
  • Currently Being Moderated
    Oct 25, 2011 6:50 PM   in reply to MacPrinter

    You write that you reinstall the printer after having modified the PPD file. I assume that you modify a copy of the PPD file in some location other than in the system directory where it is installed, C:\Windows\System32\spool\drivers\x64\3 for 64-bit Windows, for example. However, if you don't delete the printer instance and the .PPD file in that system directory as well as the .BPD file (otherwise matching the .PPD file name), you end up with the symptoms you have noted. What is  the .BPD file you ask? It is a binary interpretation of the .PPD file used by the driver so that it doesn't need to parse the .PPD file every time the driver is invoked. In other words, it is a cache of a processed .PPD file in binary form directly usable by the Windows PostScript driver.

     

    Delete the existing printer instance and both its .PPD and .BPD file prior to trying to reinstall and your changes will work. Another riskier, but workable solution, instead of using the .INF installer hack, is while the driver is not active (no current PostScript print jobs), edit the .PPD file in-place (i.e., in the Windows system directory per above) and simply delete the .BPD file when the editing is done. The next time the PostScript driver is invoked, it will regenerate the .BPD file from the modified .PPD file.

     

    Good luck.

     

    By the way, the PPD file strategy for table-driving the PostScript driver was great for some purposes and also very useful for 1980's and early 1990's printing architectures and hackers love it, but it has quite a few problems that a scheme that directly communicates with the printer device itself would resolve.

     

              - Dov

     
    |
    Mark as:

More Like This

  • Retrieving data ...

Bookmarked By (0)

Answers + Points = Status

  • 10 points awarded for Correct Answers
  • 5 points awarded for Helpful Answers
  • 10,000+ points
  • 1,001-10,000 points
  • 501-1,000 points
  • 5-500 points