<div class="content"><p> </p><p>The IWbemServices::ExecQueryAsync method is the asynchronous
version of the <span><a href="49ee7019-aa2d-49ef-948a-05c468e37d31" data-linktype="relative-path">IWbemServices::ExecQuery</a></span>
method. The IWbemServices::ExecQueryAsync method returns an enumerable
collection of <span><a href="46710c5c-d7ab-4e4c-b4a5-ebff311fdcd1" data-linktype="relative-path">IWbemClassObject</a></span>
interface objects based on a query.</p><dl>
<dd>
<div><pre> HRESULT ExecQueryAsync(
   [in] const BSTR strQueryLanguage,
   [in] const BSTR strQuery,
   [in] long lFlags,
   [in] IWbemContext* pCtx,
   [in] IWbemObjectSink* pResponseHandler
 );
</pre></div>
</dd></dl><p><b>strQueryLanguage: </b>MUST be set to
&#34;WQL&#34;.</p><p><b>strQuery: </b>MUST contain the <span><a href="6837a7cb-ba2d-46b1-802c-fce2fd5a6ad6#gt_46e519f1-d1f0-4dcc-bd02-9a2638c03d98" data-linktype="relative-path">WQL</a></span>
query text as specified in section <span><a href="6c8a38f4-4ee1-47cb-99f1-b42718a575ce" data-linktype="relative-path">2.2.1</a></span>. This
parameter MUST NOT be NULL.</p><p><b>lFlags: </b>Specifies the behavior of the
IWbemServices::ExecQueryAsync method. Flag behavior MUST be interpreted as
specified in the following table.</p><dl>
<dd>
<p>The server MUST allow any combination of zero or
more flags from the following table and MUST comply with all the restrictions
in a flag description. Any other DWORD value that does not match a flag
condition MUST be treated as not valid.</p>
</dd>
<dd>
<table><thead>
  <tr>
   <th>
   <p>Value</p>
   </th>
   <th>
   <p>Meaning</p>
   </th>
  </tr>
 </thead><tbody><tr>
  <td>
  <p>WBEM_FLAG_USE_AMENDED_QUALIFIERS</p>
  <p>0x00020000</p>
  </td>
  <td>
  <p>If this bit is not set, the server SHOULD not return <span><a href="6837a7cb-ba2d-46b1-802c-fce2fd5a6ad6#gt_f82a4363-0099-479c-b42c-a8d398a90443" data-linktype="relative-path">CIM
  localizable information</a></span>.</p>
  <p>If this bit is set, the server SHOULD return CIM
  localizable information for the <span><a href="6837a7cb-ba2d-46b1-802c-fce2fd5a6ad6#gt_c1fdd6c7-06cb-4787-8735-4d19a68dd802" data-linktype="relative-path">CIM object</a></span>, as
  specified in section <span><a href="2bbdf995-93d8-4902-a39d-38f2a9790b85" data-linktype="relative-path">2.2.6</a></span>.</p>
  </td>
 </tr><tr>
  <td>
  <p>WBEM_FLAG_SEND_STATUS</p>
  <p>0x00000080</p>
  </td>
  <td>
  <p>If this bit is not set the server MUST make one final <span><a href="479c78dc-73cf-4f5b-85bd-5efb26ab48a6" data-linktype="relative-path">IWbemObjectSink::SetStatus</a></span>
  call on the <span><a href="6837a7cb-ba2d-46b1-802c-fce2fd5a6ad6#gt_e5ba77ec-1a10-4a4e-a980-c81942237b34" data-linktype="relative-path">interface pointer</a></span>
  that is provided in the <i>pResponseHandler</i> parameter. </p>
  <p>If this bit is set, the server MAY make intermediate
  IWbemObjectSink::SetStatus calls on the interface pointer prior to call
  completion.</p>
  </td>
 </tr><tr>
  <td>
  <p>WBEM_FLAG_PROTOTYPE</p>
  <p>0x00000002</p>
  </td>
  <td>
  <p>If this bit is not set, the server MUST run the query.</p>
  <p>If this bit is set, the server MUST only return the
  class schema of the resulting objects.</p>
  </td>
 </tr><tr>
  <td>
  <p>WBEM_FLAG_DIRECT_READ</p>
  <p>0x00000200</p>
  </td>
  <td>
  <p>If this bit is not set, the server MUST consider the
  entire class hierarchy when it returns the result.</p>
  <p>If this bit is set, the server MUST disregard any
  derived class when it searches the result.</p>
  </td>
 </tr></tbody></table>
</dd></dl><p><b>pCtx: </b>MUST be a pointer to an <span><a href="18c8f1a1-652f-43b7-9186-6098bc303a8d" data-linktype="relative-path">IWbemContext</a></span>
interface, which MUST contain additional information that the client wants to
pass to the server. If <i>pCtx</i> is NULL, the parameter MUST be ignored.</p><p><b>pResponseHandler: </b>MUST be a pointer to the <span><a href="0ddb4f22-371a-4697-af5b-d4184b179b68" data-linktype="relative-path">IWbemObjectSink</a></span>
interface that is implemented by the caller, where enumeration results are
delivered. The parameter MUST NOT be NULL.</p><p><b>Return Values: </b>This method MUST return an
HRESULT value that MUST indicate the status of the method call. The server MUST
return WBEM_S_NO_ERROR (as specified in section <span><a href="a2899649-a5a3-4b13-9ffa-d8394dcdac63" data-linktype="relative-path">2.2.11</a></span>) to indicate
the successful completion of the method.</p><dl>
<dd>
<p><b>WBEM_S_NO_ERROR</b> (0x00)</p>
</dd></dl><p>The following validation happens before asynchronous
operation is started.</p><p>The <span><a href="6837a7cb-ba2d-46b1-802c-fce2fd5a6ad6#gt_f3ef2572-95cf-4c5c-b3c9-551fd648f409" data-linktype="relative-path">security principal</a></span>
that makes the call MUST have WBEM_ENABLE and WBEM_REMOTE_ENABLE accesses to
the namespace; otherwise, WBEM_E_ACCESS_DENIED MUST be returned.</p><p>This method MUST fail if <i>strQueryLanguage</i> or <i>strQuery</i>
does not exist.</p><p>The server SHOULD enforce a maximum length for the strQuery
parameter and return WBEM_E_QUOTA_VIOLATION if the limit is exceeded.<a id="Appendix_A_Target_51"></a><a aria-label="Product behavior note 51" href="27182640-aa3f-43b6-941f-a77d25f798e8#Appendix_A_51" data-linktype="relative-path">&lt;51&gt;</a></p><p>Requirements mentioned in the parameter definitions are also
checked before an asynchronous operation is started.</p><p>If successful, the server MUST create a new entry in <b>AsyncOperationTable</b>
as specified in section <span><a href="83a955c3-2fba-4d06-bd88-76ed9bbada43" data-linktype="relative-path">3.1.1.1.3</a></span>.</p><p>The following validation happens asynchronously.</p><p>In response to an IWbemServices::ExecQueryAsync method call,
the server MUST evaluate the <i>strQueryLanguage</i> and <i>strQuery</i>
parameters (as specified in this section) and return all instances that match
the requested query. The method MUST fail if the method parameters or their
combinations are not valid as specified earlier in this section, or if the
server is unable to execute the method.</p><p>If the <i>strQuery</i> is not syntactically valid or one or
more elements in &lt;PROPERTY-LIST&gt; contains undefined properties, the
server MUST return WBEM_E_INVALID_QUERY.</p><p>See IWbemServices::ExecQuery (Opnum
20) (section 3.1.4.3.18) for more details on the processing rules for
WQL queries.</p></div>