<div class="content" name="RasRpcGetUserPreferences" uuid="86832380-b5f4-45b3-a221-ee541bd573ce"><p>The <b>RasRpcGetUserPreferences</b> method retrieves the
configuration information. The configuration information consists of the
callback information associated with the various ports, and the number of the
last successful callback done by the RRAS. This configuration information is
set by <a href="83332a21-bdfb-4aca-b20a-ed4c86e88761" data-linktype="relative-path"><b>RasRpcSetUserPreferences</b></a><span><b> (</b></span>section 3.3.4.3<span><b>)</b></span>.
</p><dl>
<dd>
<div><pre> DWORD RasRpcGetUserPreferences(
   [in] handle_t h,
   [in, out] LPRASRPC_PBUSER pUser,
   [in] DWORD dwMode
 );
</pre></div>
</dd></dl><p><b>h: </b>An RPC binding handle as specified in <a href="https://go.microsoft.com/fwlink/?LinkId=89824" data-linktype="external">[C706]</a> section 2.</p><p><b>pUser: </b>Pointer to the <a href="8bed5d7d-7780-42de-8667-c23a089a6239" data-linktype="relative-path">RASRPC_PBUSER (section 2.2.1.2.229)</a>
structure which on successful return contains the configuration information on
the RRAS server.</p><p><b>dwMode: </b>This MUST be set to 2.</p><p><b>Return Values: </b>Specifies the return status as
explained in section <a href="c39d153e-2f97-4e11-8aff-bcf983869dc9" data-linktype="relative-path">2.2.1.2.218</a>
for the <b>retcode</b> field.</p><dl>
<dd>
<p>The return value can be one of the following error
codes. All other error values MUST be treated the same by the <a href="fc2dfae9-0d04-4e1d-97c9-c51c2dc06c3b#gt_6132dde1-9eae-4923-987e-9750c3dbca89" data-linktype="relative-path">RRASM client</a>.</p>
</dd>
<dd>
<table><thead>
  <tr>
   <th>
   <p>Return value/code</p>
   </th>
   <th>
   <p>Description</p>
   </th>
  </tr>
 </thead><tbody><tr>
  <td>ERROR_SUCCESS 0x00000000</td>
  <td>The call was successful.</td>
 </tr></tbody></table>
</dd></dl><p><b>Exceptions Thrown:</b> This method throws an exception
with the exception code RPC_S_ACCESS_DENIED (0x00000005) if the client is not
an <a href="fc2dfae9-0d04-4e1d-97c9-c51c2dc06c3b#gt_eb335f5b-619b-46ed-9138-06e9910108c3" data-linktype="relative-path">administrator</a> on the <a href="fc2dfae9-0d04-4e1d-97c9-c51c2dc06c3b#gt_f91f3fc7-d1a1-4a07-8c92-d19eb0c9acb0" data-linktype="relative-path">RRASM server</a>, with access
permission to perform the operation.<a id="Appendix_A_Target_335"></a><a aria-label="Product behavior note 335" href="3bb906f0-b077-47ab-ad11-d8d807afde26#Appendix_A_335" data-linktype="relative-path">&lt;335&gt;</a></p><dl>
<dd>
<p>The Opnum field value for this method is 9.</p>
</dd>
<dd>
<p>When processing this call, the RRASM SHOULD do the
following:</p>
</dd></dl><ul><li><p><span><span>  </span></span>Validate
as specified in section <a href="83a083ac-cd43-44bf-a301-7c88e64a32fe" data-linktype="relative-path">3.3.4</a>
whether this method was called by a client that is an administrator of the
RRASM server.<a id="Appendix_A_Target_336"></a><a aria-label="Product behavior note 336" href="3bb906f0-b077-47ab-ad11-d8d807afde26#Appendix_A_336" data-linktype="relative-path">&lt;336&gt;</a></p>
</li><li><p><span><span>  </span></span>Call
the abstract interface <b>Invoke RASRPC</b> method, specifying the operation
and the parameters necessary to enable RRAS server to perform the required
management task.</p>
</li><li><p><span><span>  </span></span>Populate
the <i>pUser</i> structure with the configuration information returned by the
RRAS server and returning ERROR_SUCCESS (0x00000000).</p>
</li></ul></div>