<div class="content"><p> </p><p>A fax client application uses the <b>FAX_SetPortEx (Opnum
47)</b> method to set fax device information. The function sets extension
configuration properties that are stored at the device level, such as enable or
disable sending and receiving, and the auto or manual answering of calls. The
value for the <i>dwDeviceId</i> parameter can be obtained using the <b>FAX_EnumPorts</b> (section
<span><a href="7143a58b-d7c5-4353-8857-39c7f708e778" data-linktype="relative-path">3.1.4.1.28</a></span>)
method or the <b>FAX_EnumPortsEx</b> (section <span><a href="f26e50ab-ed8e-448d-928c-1820f4a42918" data-linktype="relative-path">3.1.4.1.29</a></span>) method.</p><p>In response, the server MUST validate whether the client&#39;s
fax user account has access to the server. The server MUST validate that the <i>dwDeviceId</i>
that is specified by the client is for a valid device. On success, the server
MUST modify the properties of the device as specified by the client.</p><dl>
<dd>
<div><pre> error_status_t FAX_SetPortEx(
   [in] handle_t hFaxHandle,
   [in] DWORD dwDeviceId,
   [in, ref] const PFAX_PORT_INFO_EXW pPortInfo
 );
</pre></div>
</dd></dl><p><b>hFaxHandle: </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 <span><a href="5cbfd38d-7a14-4560-ad24-9ed78f19a3bb" data-linktype="relative-path">3.1.4.1.10</a></span>)
or <b>FAX_ConnectionRefCount</b> (section <span><a href="a92941ac-bd07-4a71-af85-c2c157c97cf9" data-linktype="relative-path">3.1.4.1.11</a></span>) method
call used to connect to the fax server.</p><p><b>dwDeviceId: </b>A unique identifier that
distinguishes the device. The value of <i>dwDeviceId</i> MUST be greater than
zero.</p><p><b>pPortInfo: </b>A pointer to a buffer of type <b>FAX_PORT_INFO_EXW</b> (section
<span><a href="530c0daf-f12f-47d6-bd67-37096ff71a52" data-linktype="relative-path">2.2.45</a></span>).</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 <span><a href="cbe6c4fb-4dda-4f6c-9701-0d490ba0d105" data-linktype="relative-path">2.2.52</a></span>, or one of
the other standard errors defined in <span><a href="../ms-erref/1bc92ddf-b79e-413c-bbaa-99a5281a6c90" data-linktype="relative-path">[MS-ERREF]</a></span>
section <span><a href="../ms-erref/18d8fbe8-a967-4f1c-ae50-99ca8e491d2d" data-linktype="relative-path">2.2</a></span>.</p><dl>
<dd>
<table><thead>
  <tr>
   <th>
   <p>Return value/code</p>
   </th>
   <th>
   <p>Description</p>
   </th>
  </tr>
 </thead><tbody><tr>
  <td>
  <p>ERROR_ACCESS_DENIED</p>
  <p>0x00000005</p>
  </td>
  <td>
  <p>Access is denied. The caller does not have the
  required FAX_ACCESS_MANAGE_CONFIG authorization for this operation.</p>
  </td>
 </tr><tr>
  <td>
  <p>ERROR_BAD_UNIT</p>
  <p>0x00000014</p>
  </td>
  <td>
  <p>The fax server cannot find the device specified by the
  <i>dwDeviceId</i> parameter.</p>
  </td>
 </tr><tr>
  <td>
  <p>ERROR_INVALID_PARAMETER</p>
  <p>0x00000057</p>
  </td>
  <td>
  <p>This error code is returned under any of the following
  conditions:</p>
  <p><span>§<span>  
  </span></span>The value of <i>dwDeviceId</i> is zero.</p>
  <p><span>§<span>  
  </span></span>The size of the structure pointed at by the <i>pPortInfo</i>
  parameter, or the value of the <b>dwSizeOfStruct</b> field of this structure,
  do not match the correct size for the <b>FAX_PORT_INFO_EXW</b>.</p>
  <p><span>§<span>  
  </span></span>The <b>ReceiveMode</b> field of the structure pointed at by <i>pPortInfo</i>
  does not contain a valid value of the <b>FAX_ENUM_DEVICE_RECEIVE_MODE</b>
  (section <span><a href="d80da1ab-ab00-44b7-81ff-41f7783b94e2" data-linktype="relative-path">2.2.55</a></span>)
  enumeration.</p>
  <p><span>§<span>  
  </span></span>The device specified by <i>dwDeviceId</i> is a virtual device
  (the <b>Flags</b> field of the <b>FAX_PORT_INFO</b> (section <span><a href="2b46d16c-e74a-4e3b-b50c-0b94f78bebd0" data-linktype="relative-path">2.2.7</a></span>)
  structure is set to FPF_VIRTUAL) and the <b>ReceiveMode</b> field of the
  structure pointed at by <i>pPortInfo</i> is <b>FAX_DEVICE_RECEIVE_MODE_MANUAL</b>.</p>
  </td>
 </tr><tr>
  <td>
  <p>ERROR_BUFFER_OVERFLOW</p>
  <p>0x0000006F</p>
  </td>
  <td>
  <p>The length of the <b>lpwstrDescription</b> character
  string field of the data structure pointed at by <i>pPortInfo</i> exceeds 253
  characters, excluding the length of the NULL string terminator. </p>
  </td>
 </tr><tr>
  <td>
  <p>ERROR_REGISTRY_CORRUPT</p>
  <p>0x000003F7</p>
  </td>
  <td>
  <p>The fax server cannot store the updated device
  information to Registry. The Registry might be corrupt.</p>
  </td>
 </tr><tr>
  <td>
  <p>FAX_ERR_DEVICE_NUM_LIMIT_EXCEEDED</p>
  <p>0x00001B62</p>
  </td>
  <td>
  <p>The fax server cannot complete the operation because
  the number of active fax devices that are allowed for this version of the
  operating system was exceeded.<a id="Appendix_A_Target_168"></a><a aria-label="Product behavior note 168" href="056171e7-80bc-45ff-8107-66ba3abb2023#Appendix_A_168" data-linktype="relative-path">&lt;168&gt;</a></p>
  </td>
 </tr></tbody></table>
</dd></dl><p><b>Exceptions Thrown:</b> No exceptions are thrown
except those that are thrown by the underlying <span><a href="46aba9c4-ebb1-4b10-86ac-4bb3025657b9#gt_8a7f6700-8311-45bc-af10-82e10accd331" data-linktype="relative-path">RPC</a></span> protocol <span><a href="../ms-rpce/290c38b1-92fe-4229-91e6-4fc376610c15" data-linktype="relative-path">[MS-RPCE]</a></span>.</p></div>