GetPrinterDriverPackagePath function
Retrieves the path to the specified printer driver package on a print server.
Syntax
HRESULT GetPrinterDriverPackagePath(
_In_ LPCTSTR pszServer,
_In_ LPCTSTR pszEnvironment,
_In_ LPCTSTR pszLanguage,
_In_ LPCTSTR pszPackageID,
_Inout_ LPTSTR pszDriverPackageCab,
_In_ DWORD cchDriverPackageCab,
_Out_ LPDWORD pcchRequiredSize
);
Parameters
-
pszServer [in]
-
A pointer to a constant, null-terminated string that specifies the name of the print server. Use NULL for the local computer.
-
pszEnvironment [in]
-
A pointer to a constant, null-terminated string that specifies the processor architecture (for example, Windows NT x86). This can be NULL.
-
pszLanguage [in]
-
A pointer to a constant, null-terminated string that specifies the Multilingual User Interface language for the driver being installed. This can be NULL.
-
pszPackageID [in]
-
A pointer to a constant, null-terminated string that specifies the ID of the driver package.
-
pszDriverPackageCab [in, out]
-
A pointer to a null-terminated string that specifies the path to the cabinet file for the driver package. This can be NULL. See Remarks.
-
cchDriverPackageCab [in]
-
The size, in characters, of the pszDriverPackageCab buffer. This can be NULL.
-
pcchRequiredSize [out]
-
A pointer to the required size of the pszDriverPackageCab buffer.
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.
To obtain a value for cchDriverPackageCab, call the function with NULL as the value of pszDriverPackageCab. Use the value returned in pcchRequiredSize as the value of cchDriverPackageCab and call the function again.
The pszPackageID is typically obtained from a call to GetCorePrinterDrivers.
Requirements
Requirement | Value |
---|---|
Minimum supported client |
Windows Vista [desktop apps only] |
Minimum supported server |
Windows Server 2008 [desktop apps only] |
Header |
|
Library |
|
DLL |
|
Unicode and ANSI names |
GetPrinterDriverPackagePathW (Unicode) and GetPrinterDriverPackagePathA (ANSI) |