DevEscape is a preexisting API. This means that is a metafile. Metafile programs can work with old drivers (returning error codes), or both the new programs and new printer drivers can work on old operating system levels.

Unfortunately, DevEscape has only two pointers to data blocks, each with two corresponding sizes. This limits what can be passed through the API. If a DJP is changed, you must re-query all of the HDC (the device context handle) characteristics. This includes font information, DevQueryCaps, DevQueryHardcopyCaps. In addition, previously opened memory HDCs are no longer valid or compatible with this DC.


[Back: Design Overview of DJP]
[Next: Engine Interfaces to the Printer Driver]