3.1.4.1.11 RpcAsyncEnumPrinterData (Opnum 27)

RpcAsyncEnumPrinterData enumerates configuration data for a specified printer.

The counterpart of this method in the Print System Remote Protocol is RpcEnumPrinterData. All parameters not defined below are specified in [MS-RPRN] section 3.1.4.2.16.

 DWORD RpcAsyncEnumPrinterData(
   [in] PRINTER_HANDLE hPrinter,
   [in] DWORD dwIndex,
   [out, size_is(cbValueName/sizeof(wchar_t))] 
     wchar_t* pValueName,
   [in] DWORD cbValueName,
   [out] DWORD* pcbValueName,
   [out] DWORD* pType,
   [out, size_is(cbData)] unsigned char* pData,
   [in] DWORD cbData,
   [out] DWORD* pcbData
 );

hPrinter: A handle to a printer object that has been opened using either RpcAsyncOpenPrinter (section 3.1.4.1.1) or RpcAsyncAddPrinter (section 3.1.4.1.2).

Return Values: This method returns zero to indicate successful completion or a nonzero Win32 error code ([MS-ERREF] section 2.2) to indicate failure. Aside from the specific nonzero return values documented in section 3.1.4, the client MUST treat any nonzero return value as a fatal error.

Exceptions Thrown: This method MUST NOT throw any exceptions other than those that are thrown by the underlying RPC protocol [MS-RPCE].

This method MUST adhere to the parameter validation, processing, and response requirements that are specified in [MS-RPRN] section 3.1.4.2.16.