<div class="content" name="FAX_SetConfiguration" uuid="23236737-e2f7-4fa6-80dd-066e241f1f5a"><p>The fax client application calls the <b>FAX_SetConfiguration
(Opnum 20)</b> method to change the general configuration of the fax server.
The <b>FAX_CONFIGURATIONW</b> (section <a href="c64c03ad-0e74-46d0-89c0-d76b64785dba" data-linktype="relative-path">2.2.28</a>) structure
describes the general configuration of the fax server.</p><p>In response, the server MUST validate that the client&#39;s fax
user account has access to manage configuration on the server. On success, the
server MUST set the specified configuration parameters.</p><dl>
<dd>
<div><pre> error_status_t FAX_SetConfiguration(
   [in] handle_t hBinding,
   [in] const FAX_CONFIGURATIONW* FaxConfig
 );
</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>FaxConfig: </b>A pointer to a <b>FAX_CONFIGURATIONW</b>.
The SizeOfStruct member of this structure MUST be set to the correct size, in
bytes, of the <b>FAX_CONFIGURATIONW</b> described in section 2.2.28. The
structure MUST be passed as a byte array buffer. The structure MUST be present
at the start of the buffer. The <b>LPCWSTR</b> fields in the structure MUST
store the offsets to the actual string data, which MUST be located at the end
of the structure. The <b>LPCWSTR</b> strings located at the end of the buffer
MUST be in the same order of occurrence in the structure.  If the <b>Branding</b>
structure member is TRUE, the fax server SHOULD generate a brand that contains
transmission-related information, such as the transmitting subscriber
identifier, date, time, and page count. If the <b>UseDeviceTsid</b> structure
member is TRUE, the server SHOULD use the device&#39;s transmitting subscriber
identifier. If the <b>ServerCp</b> structure member is TRUE, the client SHOULD
use a common cover page stored on the fax server; if this member is FALSE, the
client SHOULD use a personal cover page template. If the <b>PauseServerQueue</b>
structure member is TRUE, the server SHOULD pause the outgoing <a href="46aba9c4-ebb1-4b10-86ac-4bb3025657b9#gt_0c5e7185-40c3-4e58-a8ac-7626ed078235" data-linktype="relative-path">fax queue</a>. If the <b>ArchiveOutgoingFaxes</b>
structure member is TRUE, the server SHOULD archive transmissions in the
directory specified by the <b>ArchiveDirectory</b> member. The fax server
SHOULD ignore the <b>ArchiveDirectory</b> structure member if the <b>ArchiveOutgoingFaxes</b>
member is FALSE. If the <b>ArchiveOutgoingFaxes</b> member is TRUE, the fax
server SHOULD<a id="Appendix_A_Target_155"></a><a aria-label="Product behavior note 155" href="056171e7-80bc-45ff-8107-66ba3abb2023#Appendix_A_155" data-linktype="relative-path">&lt;155&gt;</a> validate the value of the <b>ArchiveDirectory</b>
member, and if this validation succeeds, the fax server SHOULD retain the value
of the <b>ArchiveDirectory</b> member and use this value as the name of the
directory where the fax server will archive the future fax transmissions. The
fax server SHOULD retain the discount time period submitted by the client with
the <b>StartCheapTime</b> and the <b>StopCheapTime</b> structure members.<a id="Appendix_A_Target_156"></a><a aria-label="Product behavior note 156" href="056171e7-80bc-45ff-8107-66ba3abb2023#Appendix_A_156" data-linktype="relative-path">&lt;156&gt;</a></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 required access rights, in this case FAX_ACCESS_MANAGE_CONFIG.</td>
 </tr><tr>
  <td>ERROR_INVALID_PARAMETER 0x00000057</td>
  <td>The parameter is incorrect. This error code is returned under any of the following conditions: § The pointer specified with the FaxConfig argument is NULL.&lt;157&gt; § The dwSizeOfStruct member of the FAX_CONFIGURATIONW specified by the FaxConfig parameter is different from the correct size, in bytes, for the FAX_CONFIGURATIONW, described in section 2.2.28. § The ArchiveOutgoingFaxes member of the FAX_CONFIGURATIONW specified by FaxConfig is set to TRUE, and the ArchiveDirectory member of the same data structure is set to a NULL pointer value.&lt;158&gt;</td>
 </tr><tr>
  <td>ERROR_REGISTRY_CORRUPT 0x000003F7</td>
  <td>The registry is corrupted. The structure of one of the files that contain registry data is corrupted, or the system&#39;s memory image of the file is corrupted, or the file could not be recovered because the alternate copy or log was absent or corrupted.</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>