The AddPrinterDriver function installs a local or remote printer driver and links the configuration, data, and driver files.
BOOL AddPrinterDriver(
LPTSTR pName, |
// pointer to server name |
DWORD Level, |
// printer info. structure level |
LPBYTE pDriverInfo |
// pointer to printer info. structure |
); |
If pName is NULL, the driver will be installed locally.
This value can be either 2 or 3.
If the pEnvironment member of the structure pointed to by pDriverInfo is NULL, the current environment of the caller/client (not of the destination/server) is used.
If the function succeeds, the return value is nonzero.
If the function fails, the return value is zero. To get extended error information, call GetLastError.
Before an application calls the AddPrinterDriver function, all files required by the driver must be copied to the system’s printer-driver directory. An application can retrieve the name of this directory by calling the GetPrinterDriverDirectory function.
An application can determine which printer drivers are currently installed by calling the EnumPrinterDrivers function.
DRIVER_INFO_2, DRIVER_INFO_3, EnumPrinterDrivers, GetPrinterDriverDirectory