<div class="content" name="ModifyPolicy" uuid="8b60712a-b527-41f7-86f6-db2f7eed45a0"><p>The ModifyPolicy method modifies an existing <a href="e371cc74-bf4c-4870-8afe-5062cc628b4f#gt_ce127d6a-8b12-40d6-b9c9-cf544c3ffd08" data-linktype="relative-path">resource allocation policy
(RAP)</a>.</p><dl>
<dd>
<div><pre> [id(3), helpstring(&#34;method ModifyPolicy&#34;)] HRESULT ModifyPolicy(
   [in] BSTR bstrPolicyInfo,
   [in] BOOL bOverwrite
 );
</pre></div>
</dd></dl><p><b>bstrPolicyInfo: </b>A string that contains the
policy to modify, in the form of a <a href="e6be8e0b-2ecb-4305-8f7c-ac378cc1900f" data-linktype="relative-path">Policy element</a> (section
2.2.5.21). For an example, see <a href="4600dd8b-3ef5-4390-9bfd-c291a6f45080" data-linktype="relative-path">Policy example</a> (section
4.2.19).</p><dl>
<dd>
<p>If this parameter is NULL, <b>E_INVALIDARG</b> MUST
be returned.</p>
</dd></dl><p><b>bOverwrite: </b>A Boolean value that specifies
whether to ignore the timestamp of the specified policy when validating. </p><dl>
<dd>
<p>A timestamp MUST be defined inside a common node at
the root level of an <a href="e371cc74-bf4c-4870-8afe-5062cc628b4f#gt_982b7f8e-d516-4fd5-8d5e-1a836081ed85" data-linktype="relative-path">XML</a>
element, as shown in the <a href="1fd26c60-e8c3-432c-805a-48fa5407ea34" data-linktype="relative-path">Calendar</a>
example (section 4.2.6). The format of a timestamp is specified in section <a href="cee8ad39-3c17-48ef-8196-0ec67d7cc4a0" data-linktype="relative-path">2.2.1.4</a>.</p>
</dd>
<dd>
<table><thead>
  <tr>
   <th>
   <p>Value</p>
   </th>
   <th>
   <p>Meaning</p>
   </th>
  </tr>
 </thead><tbody><tr>
  <td>FALSE 0x00000000</td>
  <td>The timestamp of the new policy MUST specify a time that is later than or equal to the timestamp of any modifications made to a policy object on the server. Otherwise, the modification MUST fail, and WRM_ERR_OLD_INFORMATION MUST be returned.</td>
 </tr><tr>
  <td>TRUE 0x00000001</td>
  <td>The policy is validated and modified without checking the timestamp.</td>
 </tr></tbody></table>
</dd></dl><p><b>Return Values: </b>This method returns 0x00000000
for success or a negative <a href="e371cc74-bf4c-4870-8afe-5062cc628b4f#gt_799103ab-b3cb-4eab-8c55-322821b2b235" data-linktype="relative-path">HRESULT</a>
value (in the following table or in <a href="../ms-erref/1bc92ddf-b79e-413c-bbaa-99a5281a6c90" data-linktype="relative-path">[MS-ERREF]</a>
section <a href="../ms-erref/705fb797-2175-4a90-b5a3-3918024b10b8" data-linktype="relative-path">2.1.1</a>)
if an error occurs.</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>Operation successful.</td>
 </tr><tr>
  <td>0x80070057 E_INVALIDARG</td>
  <td>One or more arguments are invalid.</td>
 </tr><tr>
  <td>0xC1FF0069 WRM_ERR_OLD_INFORMATION</td>
  <td>The XML timestamp is out of date.</td>
 </tr><tr>
  <td>0xC1FF006F WRM_ERR_ID_VALUE</td>
  <td>The specified name contains characters that are invalid. The name cannot start with a hyphen (&#34;-&#34;), cannot contain spaces, and cannot contain any of the following characters:   \   / ? * | : &lt; &gt; &#34; , ;</td>
 </tr><tr>
  <td>0xC1FF0070 WRM_ERR_TAGS_NOT_IN_ORDER</td>
  <td>The XML data that is maintained by the management service is invalid or cannot be processed.&lt;107&gt;</td>
 </tr><tr>
  <td>0xC1FF00C9 WRM_ERR_POLICYID_INVALID</td>
  <td>The specified RAP does not exist.</td>
 </tr><tr>
  <td>0xC1FF00E0 WRM_ERR_WSRM_RESERVED_POLICY</td>
  <td>The specified policy is a built-in policy. It cannot be altered.</td>
 </tr><tr>
  <td>0xC1FF012E WRM_ERR_RESOURCEGROUPID_INVALID</td>
  <td>The request has been aborted because the process matching criteria (PMC) name could not be found.</td>
 </tr></tbody></table>
</dd></dl><p>Additional <a href="a03f4cd5-ad33-46aa-94e7-2c9a92f02b6f" data-linktype="relative-path">IWRMPolicy</a> interface
methods are specified in section 3.2.4.7.</p></div>