3.1.4.1.13 RpcAsyncEnumPrinterKey (Opnum 29)

RpcAsyncEnumPrinterKey enumerates the subkeys of a specified key for a specified printer.

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

 DWORD RpcAsyncEnumPrinterKey(
   [in] PRINTER_HANDLE hPrinter,
   [in, string] const wchar_t* pKeyName,
   [out, size_is(cbSubkey/sizeof(wchar_t))] 
     wchar_t* pSubkey,
   [in] DWORD cbSubkey,
   [out] DWORD* pcbSubkey
 );

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.21.