<div class="content" name="CprepDiskIsPRPresent" uuid="6a029711-ff40-401b-a4e7-e5298fa0801d"><p>The CprepDiskIsPRPresent method determines whether there are
any PERSISTENT RESERVE reservations on the <span><a href="b30bcd1c-8ff6-46d2-a27e-61bd85ace9f4#gt_c4133b2a-a990-4042-ba44-7fda3090f118" data-linktype="relative-path">disk</a></span>.</p><dl>
<dd>
<div><pre> HRESULT CprepDiskIsPRPresent(
   [in] CPREP_DISKID DiskId,
   [out] unsigned long* Present
 );
</pre></div>
</dd></dl><p><b>DiskId: </b>The identifier of the <b>ClusPrepDisk</b>
representing the disk.</p><p><b>Present: </b>MUST be 0x00000000 if no reserves are
present. MUST be 0x00000001 or 0x00000002 if reserves are present.</p><dl>
<dd>
<table><thead>
  <tr>
   <th>
   <p>Value</p>
   </th>
   <th>
   <p>Meaning</p>
   </th>
  </tr>
 </thead><tbody><tr>
  <td>0x00000000</td>
  <td>No reserves are present.</td>
 </tr><tr>
  <td>0x00000001</td>
  <td>A persistent reservation is present and is not held by the local server.</td>
 </tr><tr>
  <td>0x00000002</td>
  <td>A persistent reservation is present and is held by the local server.&lt;13&gt;</td>
 </tr></tbody></table>
</dd></dl><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><tr>
  <td>0x80070002 ERROR_FILE_NOT_FOUND</td>
  <td>The disk was not found.</td>
 </tr><tr>
  <td>0x80070548 ERROR_INVALID_SERVER_STATE</td>
  <td>The server&#39;s Prepare State is not Online.</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 <span><a href="b30bcd1c-8ff6-46d2-a27e-61bd85ace9f4#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><p>The <span><a href="b30bcd1c-8ff6-46d2-a27e-61bd85ace9f4#gt_e127848e-c66d-427d-b3aa-9f904fa4ada7" data-linktype="relative-path">opnum</a></span> field value
for this method is 31.</p><p>When processing this call, the server MUST do the following:</p><ul><li><p><span><span> 
</span></span>Obtain the <b>ClusPrepDisk</b> identified by the <i>DiskId</i>
parameter as described in section <span><a href="c17ce220-d244-45c9-95c0-4c31942253ee" data-linktype="relative-path">3.2.4</a></span>.</p>
</li><li><p><span><span> 
</span></span>Issue a PERSISTENT RESERVE IN command with a READ RESERVATION
action, as specified in <span><a href="https://go.microsoft.com/fwlink/?LinkId=90528" data-linktype="external">[SPC-3]</a></span> section
6.11.</p>
</li><li><p><span><span> 
</span></span>Set the <i>Present</i> parameter correctly, depending on the
results.</p>
</li></ul><p>Upon successful completion, the server returns the following
data to the client:</p><ul><li><p><span><span> 
</span></span>A value indicating whether persistent reserves are present on the
disk</p>
</li></ul></div>