<div class="content" name="RpcWinStationDisconnect" uuid="194a4899-4745-46ae-9697-b44a5457d77d"><p>The RpcWinStationDisconnect method disconnects, on the
server, the terminal server client from a session. If the method succeeds, the
state of the session is State_Disconnected as defined in the <b>WINSTATIONSTATECLASS</b>
enumeration (section <span><a href="b619d8aa-4e8a-4716-954e-a4d596ed37f8" data-linktype="relative-path">2.2.1.9</a></span>).</p><p>The caller of this method MUST have WINSTATION_DISCONNECT
permission on the session to disconnect. The method checks whether the caller
has WINSTATION_DISCONNECT permission (section <span><a href="4507e852-be3d-45b6-bc47-8ca0b552c94d" data-linktype="relative-path">3.1.1</a></span>) by setting
it as the Access Request mask, and fails if the caller does not have the
permission.<a id="Appendix_A_Target_182"></a><a aria-label="Product behavior note 182" href="7ce7f717-461b-4f18-9829-6690168c7707#Appendix_A_182" data-linktype="relative-path">&lt;182&gt;</a></p><dl>
<dd>
<div><pre> BOOLEAN RpcWinStationDisconnect(
   [in] SERVER_HANDLE hServer,
   [out] DWORD* pResult,
   [in] DWORD LogonId,
   [in] BOOLEAN bWait
 );
</pre></div>
</dd></dl><p><b>hServer: </b>Handle to the server object. This is
of type <span><a href="49484cdf-2feb-4de9-a588-5d01cf8995dc" data-linktype="relative-path">SERVER_HANDLE</a></span>.
hServer MUST be obtained from a previous call to <span><a href="fd6f339d-f5dd-452c-a9a9-ec753c22a36a" data-linktype="relative-path">RpcWinStationOpenServer</a></span>.</p><p><b>pResult: </b> Failure error code if the call to
RpcWinStationDisconnect failed. If the call was successful, this parameter MUST
be STATUS_SUCCESS (0x00000000).</p><dl>
<dd>
<table><thead>
  <tr>
   <th>
   <p>Value</p>
   </th>
   <th>
   <p>Meaning</p>
   </th>
  </tr>
 </thead><tbody><tr>
  <td>STATUS_SUCCESS 0x00000000</td>
  <td>The call succeeded.</td>
 </tr><tr>
  <td>STATUS_ACCESS_DENIED 0xC0000022</td>
  <td>The caller does not have permission to disconnect the session.</td>
 </tr></tbody></table>
</dd></dl><p><b>LogonId: </b> The ID of the session to disconnect.
Can be LOGONID_CURRENT to indicate the current session.</p><p><b>bWait: </b> TRUE to wait for the disconnect to
complete before returning, FALSE otherwise.<a id="Appendix_A_Target_183"></a><a aria-label="Product behavior note 183" href="7ce7f717-461b-4f18-9829-6690168c7707#Appendix_A_183" data-linktype="relative-path">&lt;183&gt;</a></p><p><b>Return Values: </b> Returns TRUE if the call
succeeded, or FALSE if the method failed. On failure, <i>pResult</i> indicates
the failure status code.</p><dl>
<dd>
<table><thead>
  <tr>
   <th>
   <p>Return value/code</p>
   </th>
   <th>
   <p>Description</p>
   </th>
  </tr>
 </thead><tbody><tr>
  <td>0x01 TRUE</td>
  <td>Successful completion.</td>
 </tr><tr>
  <td>0x00 FALSE</td>
  <td>Method call failed.</td>
 </tr></tbody></table>
</dd></dl><p> </p></div>