Export (0) Print
Expand All

InstallPrinterDriverFromPackage function

Installs a printer driver from a driver package that is in the print server's driver store.

Syntax


HRESULT InstallPrinterDriverFromPackage(
  _In_  LPCTSTR pszServer,
  _In_  LPCTSTR pszInfPath,
  _In_  LPCTSTR pszDriverName,
  _In_  LPCTSTR pszEnvironment,
  _In_  DWORD dwFlags
);

Parameters

pszServer [in]

A pointer to a constant, null-terminated string that specifies the name of the print server. NULL means the local computer.

pszInfPath [in]

A pointer to a constant, null-terminated string that specifies the driver store path to the print driver's .inf file. NULL means the driver is in an inf file that shipped with Windows.

pszDriverName [in]

A pointer to a constant, null-terminated string that specifies the name of the driver.

pszEnvironment [in]

A pointer to a constant, null-terminated string that specifies the processor architecture (for example, Windows NT x86). This can be NULL.

dwFlags [in]

This can only be 0 or IPDFP_COPY_ALL_FILES. A value of 0 means that the printer driver must be added and any files in the printer driver directory that are newer than corresponding files currently in use must be copied. A value of IPDFP_COPY_ALL_FILES means the printer driver and all the files in the printer driver directory must be added. The file time stamps are ignored when dwFlags has a value of IPDFP_COPY_ALL_FILES.

Return value

If the operation succeeds, the return value is S_OK, otherwise the HRESULT will contain an error code.

For more information about COM error codes, see Error Handling.

Remarks

Note  This is a blocking or synchronous function and might not return immediately. How quickly this function returns depends on run-time factors such as network status, print server configuration, and printer driver implementation—factors that are difficult to predict when writing an application. Calling this function from a thread that manages interaction with the user interface could make the application appear to be unresponsive.

The driver store is typically either %windir%\inf or %windir%\System32\DriverStore\FileRepository.

InstallPrinterDriverFromPackage also installs other files in the package, such as color profiles and print processors.

Users must have printer administration rights to install either on a remote computer or on the local computer when the user is logged in with Terminal Services.

Only signed packages can be installed on a remote computer.

Requirements

Minimum supported client

Windows Vista [desktop apps only]

Minimum supported server

Windows Server 2008 [desktop apps only]

Header

Winspool.h (include Windows.h)

Library

Winspool.lib

DLL

Spoolss.dll

Unicode and ANSI names

InstallPrinterDriverFromPackageW (Unicode) and InstallPrinterDriverFromPackageA (ANSI)

See also

Printing
Print Spooler API Functions

 

 

Community Additions

ADD
Show:
© 2014 Microsoft