<div class="content" name="EnumerateSRPLevels" uuid="82091bae-58a7-4b78-967c-f0c1cb80898b"><p>This method is called by a client to get an enumeration of
software restriction policy (see section <a href="d5ffec71-f935-42fc-85ce-c25ad131062e" data-linktype="relative-path">3.1.1.1.9</a>) <a href="3f01a312-3391-4109-a96e-95358babf191#gt_79443f81-6f25-412a-9356-e44188c4a92b" data-linktype="relative-path">trust levels</a> supported by
the server.</p><dl>
<dd>
<div><pre> HRESULT EnumerateSRPLevels(
   [in] LCID Locale,
   [out] int* cLevels,
   [out, size_is(,*cLevels)] SRPLevelInfo** aSRPLevels
 );
</pre></div>
</dd></dl><p><b>Locale: </b>The language code identifier, as
specified in <a href="../ms-lcid/70feba9f-294e-491e-b6eb-56532684c37f" data-linktype="relative-path">[MS-LCID]</a>,
for the language into which the descriptive strings for each level are to be
translated, if possible.</p><p><b>cLevels: </b>A pointer to a variable that, upon
successful completion, MUST be set to the number of elements in <i>aSRPLevels</i>.</p><p><b>aSRPLevels: </b>A pointer to a variable that, upon
successful completion, MUST be set to an array of <a href="8b13982b-1a21-4e89-bf53-1180b5dfcb6e" data-linktype="relative-path">SRPLevelInfo (section 2.2.6)</a>
structures representing the software restriction policy levels that the server
defines.</p><p><b>Return Values: </b>This method MUST return S_OK
(0x00000000) on success, and a failure result, as specified in <a href="../ms-erref/1bc92ddf-b79e-413c-bbaa-99a5281a6c90" data-linktype="relative-path">[MS-ERREF]</a>
section <a href="../ms-erref/0642cb2f-2075-4469-918c-4441e69c548a" data-linktype="relative-path">2.1</a>,
on failure. All failure results MUST be treated identically.</p><p>The server SHOULD, by some implementation-specific
mechanism, attempt to translate the names of the software restriction policy
levels it supports to the language specified by <i>Locale</i>, and SHOULD fall
back to a default language if it cannot.</p><p>The server then MUST attempt to set the values referenced by
the out parameters as follows: The server MUST attempt to set the value
referenced by <i>cLevels</i> to the number of software restriction policy
levels the server supports, and the value referenced by <i>aSRPLevels</i> to an
array of SRPLevelInfo structures, each of which describes a software
restriction policy level, and fail the call if it cannot.</p></div>