<div class="content" name="CprepPrepareNode" uuid="b8f9971a-3a66-4757-9db0-b88e2ef009be"><p>The <b>CprepPrepareNode</b> method prepares the server in an
implementation-specific way to execute the other methods in the interface. It
also informs the client about version information.</p><p>This method is called before any other.</p><dl>
<dd>
<div><pre> HRESULT CprepPrepareNode(
   [out] unsigned long* pulMajorVersion,
   [out] unsigned long* pulMinorVersion,
   [out] unsigned long* pdwCPrepVersion
 );
</pre></div>
</dd></dl><p><b>pulMajorVersion: </b>The server MUST set this to
the operating system major version.</p><p><b>pulMinorVersion: </b>The server MUST set this to
the operating system minor version.</p><p><b>pdwCPrepVersion: </b>The client MUST ignore this
value.</p><p><b>Return Values: </b>A signed 32-bit value that
indicates return status. If the method returns a negative value, it has failed.
Zero or positive values indicate success, with the lower 16 bits in positive
nonzero values containing warnings or flags defined in the method
implementation. For more information about Win32 error codes and <span><a href="../ms-dtyp/a9046ed2-bfb2-4d56-a719-2824afce59ac" data-linktype="relative-path">HRESULT</a></span>
values, see <span><a href="../ms-erref/1bc92ddf-b79e-413c-bbaa-99a5281a6c90" data-linktype="relative-path">[MS-ERREF]</a></span>
sections <span><a href="../ms-erref/18d8fbe8-a967-4f1c-ae50-99ca8e491d2d" data-linktype="relative-path">2.2</a></span>
and <span><a href="../ms-erref/0642cb2f-2075-4469-918c-4441e69c548a" data-linktype="relative-path">2.1</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>0x00000000 S_OK</td>
  <td>The call was successful.</td>
 </tr></tbody></table>
</dd>
<dd>
<p>For any other condition, this method MUST return a
value that is not one of the values listed in the preceding table. The client
MUST behave in one consistent, identical manner for all values that are not
listed in the preceding table.</p>
</dd></dl><p>Exceptions Thrown: No exceptions are thrown beyond those
thrown by the underlying RPC protocol <span><a href="../ms-rpce/290c38b1-92fe-4229-91e6-4fc376610c15" data-linktype="relative-path">[MS-RPCE]</a></span>.</p><p>The opnum field value for this method is 5.</p><p>When processing this call the server MUST do the following: </p><ul><li><p><span><span> 
</span></span>Set <i>pulMajorVersion</i> as discussed earlier in this section.</p>
</li><li><p><span><span> 
</span></span>Set <i>pulMinorVersion</i> as discussed earlier in this section.</p>
</li><li><p><span><span> 
</span></span>Set the server <b>Prepare State</b> to Preparing.</p>
</li></ul><p>The server returns the following information to the client:</p><ul><li><p><span><span> 
</span></span>The <i>pulMajorVersion</i> and <i>pulMinorVersion</i> output
parameters set to the appropriate values. The <i>pdwCPrepVersion</i> value is
set arbitrarily by the server and MUST be ignored by the client.</p>
</li></ul></div>