Design and Implementation Notes

A Windows 95 Network Print Provider is implemented as a 32-bit dynamic link library (DLL) which is specific to its underlying networking software. At startup, the PRR enumerates installed print providers from the Registry and attempts to load each one. During the DLL load process, an NPP should verify that its associated network software is running and refuse to load if it is not.

Upon the successful loading of a Print Provider, the PRR calls its InitializePrintProvidor function by ordinal to obtain a table of entry points corresponding to the Win32 print APIs. Since all calls to the provider are made through the table, it is not necessary for the DLL to export any of the functions in the table by name.

Each table entry must point to a valid function. Print Providers are required to provide stubs for functions that they do not implement. For more information see Functions Implemented as Stubs.

The functions represented in the entry-point table fall into three different groups:

The following sections list the functions in each of these categories.