<div class="content" name="FAX_GetServicePrinters" uuid="c6e1df07-a728-441f-ba13-9844236d3b8b"><p>The fax client application calls the <b>FAX_GetServicePrinters
(Opnum 0)</b> method to obtain a list of printers that are visible to the fax
server.</p><p>In response, the server MUST validate whether the client&#39;s
fax user account has access to execute this operation. On success, the server
SHOULD enumerate printers using an implementation-specific method<a id="Appendix_A_Target_135"></a><a aria-label="Product behavior note 135" href="056171e7-80bc-45ff-8107-66ba3abb2023#Appendix_A_135" data-linktype="relative-path">&lt;135&gt;</a> and then the server MUST
return information about all the enumerated printers in a buffer containing an
array of <b>FAX_PRINTER_INFOW</b> (section <a href="940903c9-cd51-4beb-a4d7-b953743f9ee5" data-linktype="relative-path">2.2.43</a>) structures, each
of the returned structures describing one enumerated printer. The server MUST
also return the size of this information and the number of printers for which
it enumerated the information successfully.</p><p>The client SHOULD free the returned buffer.</p><dl>
<dd>
<div><pre> error_status_t FAX_GetServicePrinters(
   [in] handle_t hBinding,
   [out, size_is(,*lpdwBufferSize)] 
     LPBYTE* lpBuffer,
   [out, ref] LPDWORD lpdwBufferSize,
   [out, ref] LPDWORD lpdwPrintersReturned
 );
</pre></div>
</dd></dl><p><b>hBinding: </b>The RPC binding handle for this
call. The client SHOULD reuse the RPC binding handle used as an input <i>hBinding</i>
argument for the <b>FAX_ConnectFaxServer</b> (section <a href="5cbfd38d-7a14-4560-ad24-9ed78f19a3bb" data-linktype="relative-path">3.1.4.1.10</a>) or <b>FAX_ConnectionRefCount</b>
(section <a href="a92941ac-bd07-4a71-af85-c2c157c97cf9" data-linktype="relative-path">3.1.4.1.11</a>)
method call used to connect to the fax server.</p><p><b>lpBuffer: </b>A pointer to a buffer containing an
array of <b>FAX_PRINTER_INFOW</b>.</p><p><b>lpdwBufferSize: </b>A pointer to a <b>DWORD</b> (<a href="../ms-dtyp/cca27429-5689-4a16-b2b4-9325d93e4ba2" data-linktype="relative-path">[MS-DTYP]</a>
section <a href="../ms-dtyp/262627d8-3418-4627-9218-4ffe110850b2" data-linktype="relative-path">2.2.9</a>)
value containing the size, in bytes, of the buffer.</p><p><b>lpdwPrintersReturned: </b>A pointer to a <b>DWORD</b>
value indicating the number of the printers in the buffer.</p><p><b>Return Values: </b>This method MUST return
0x00000000 (ERROR_SUCCESS) for success; otherwise, it MUST return one of the
following error codes, one of the fax-specific errors that are defined in
section <a href="cbe6c4fb-4dda-4f6c-9701-0d490ba0d105" data-linktype="relative-path">2.2.52</a>, or one
of the other standard errors defined in <a href="../ms-erref/1bc92ddf-b79e-413c-bbaa-99a5281a6c90" data-linktype="relative-path">[MS-ERREF]</a>
section <a href="../ms-erref/18d8fbe8-a967-4f1c-ae50-99ca8e491d2d" data-linktype="relative-path">2.2</a>.</p><dl>
<dd>
<table><thead>
  <tr>
   <th>
   <p>Return value/code</p>
   </th>
   <th>
   <p>Description</p>
   </th>
  </tr>
 </thead><tbody><tr>
  <td>ERROR_ACCESS_DENIED 0x00000005</td>
  <td>Access is denied. The client&#39;s fax user account does not have the FAX_ACCESS_QUERY_CONFIG access rights required for this operation.</td>
 </tr><tr>
  <td>ERROR_NOT_ENOUGH_MEMORY 0x00000008</td>
  <td>Not enough storage is available to process this command. The fax server failed to allocate sufficient memory to hold the array of FAX_PRINTER_INFOW structures to be returned to the client.</td>
 </tr><tr>
  <td>ERROR_INVALID_PARAMETER 0x00000057</td>
  <td>The parameter is incorrect. The lpBuffer parameter is set to a NULL pointer value.&lt;136&gt;</td>
 </tr><tr>
  <td>ERROR_INTERNAL_ERROR 0x0000054F</td>
  <td>The fax server failed to custom marshal the array of FAX_PRINTER_INFOW structures to be returned to the client.</td>
 </tr></tbody></table>
</dd></dl><p><b>Exceptions Thrown:</b> No exceptions are thrown
except those that are thrown by the underlying <a href="46aba9c4-ebb1-4b10-86ac-4bb3025657b9#gt_8a7f6700-8311-45bc-af10-82e10accd331" data-linktype="relative-path">RPC</a> protocol, <a href="../ms-rpce/290c38b1-92fe-4229-91e6-4fc376610c15" data-linktype="relative-path">[MS-RPCE]</a>.</p></div>