Méthode SWbemObject.InstancesAsync_
La méthode InstancesAsync_ de SWbemObject fournit de manière asynchrone les instances de l’objet de classe actuel. Cette méthode implémente une requête simple. Des requêtes plus complexes peuvent nécessiter l’utilisation de SWbemServices.ExecQuery.
Pour obtenir une explication de cette syntaxe, consultez Conventions de document pour l’API de script.
Syntaxe
SWbemObject.InstancesAsync_( _
ByVal objWbemSink, _
[ ByVal iFlags ], _
[ ByVal objwbemNamedValueSet ], _
[ ByVal objWbemAsyncContext ] _
)
Paramètres
-
objWbemSink [in]
-
Récepteur d’objets qui retourne les instances.
-
iFlags [in, optional]
-
Entier qui détermine le comportement de l’appel. Ce paramètre peut accepter les valeurs suivantes.
-
wbemFlagSendStatus (128 (0x80))
-
Provoque des appels asynchrones pour envoyer des mises à jour d’état au gestionnaire d’événements SWbemSink.OnProgress pour le récepteur d’objets.
-
wbemFlagDontSendStatus (0 (0x0))
-
Empêche les appels asynchrones d’envoyer des mises à jour de l’état du récepteur d’objets au gestionnaire d’événements OnProgress.
-
wbemFlagUseAmendedQualifiers (131072 (0x20000))
-
Provoque le retour par WMI de la classe localisée et des descriptions de propriétés. Pour plus d’informations, consultez Localisation des informations de classe WMI.
objwbemNamedValueSet [in, facultatif]
En règle générale, ceci n’est pas défini. Sinon, il s’agit d’un objet SWbemNamedValueSet dont les éléments représentent les informations de contexte qui peuvent être utilisées par le fournisseur répondant à la demande. Un fournisseur qui prend en charge ou requiert de telles informations doit documenter les noms de valeur reconnus, le type de données de la valeur, les valeurs autorisées et la sémantique.
objWbemAsyncContext [in, optional]
Il s’agit d’un objet SWbemNamedValueSet qui retourne au récepteur d’objets pour identifier la source de l’appel asynchrone d’origine. Utilisez ce paramètre si vous effectuez plusieurs appels asynchrones à l’aide du même récepteur d’objets. Pour utiliser ce paramètre, créez un objet SWbemNamedValueSet et utilisez la méthode SWbemNamedValueSet.Add pour ajouter une valeur qui identifie l’appel asynchrone que vous effectuez. Cet objet SWbemNamedValueSet est retourné au récepteur de l’objet, et la source de l’appel peut être extraite à l’aide de la méthode SWbemNamedValueSet.Item. Pour plus d’informations, consultez Appel d’une méthode.
Valeur retournée
Cette méthode ne retourne pas de valeur. En cas de réussite, le récepteur reçoit un événement OnObjectReady par instance. Après la dernière instance, le récepteur d’objets reçoit un événement OnCompleted.
Codes d’erreur
Une fois la méthode InstancesAsync_ terminée, l’objet Err peut contenir l’un des codes d’erreur de la liste suivante.
-
wbemErrAccessDenied - 2147749891 (0x80041003)
-
L’utilisateur actuel n’a pas l’autorisation de voir les instances de la classe spécifiée.
-
wbemErrFailed - 2147749889 (0x80041001)
-
Une erreur non spécifiée s’est produite.
-
wbemErrInvalidClass - 2147749904 (0x80041010)
-
La classe spécifiée n’est pas valide.
-
wbemErrInvalidParameter - 2147749896 (0x80041008)
-
Un paramètre spécifié n’est pas valide.
-
wbemErrOutOfMemory - 2147749894 (0x80041006)
-
La mémoire disponible est insuffisante pour terminer cette opération.
Notes
Cet appel retourne le résultat immédiatement. Les objets et l’état demandés sont retournés à l’appelant par le biais de rappels remis au récepteur spécifié dans objWbemSink. Pour traiter chaque objet lorsqu’il arrive, créez un objWbemSink. Sous-routine d’événement OnObjectReady. Une fois tous les objets retournés, vous pouvez effectuer le traitement final dans votre implémentation de l’événement objWbemSink. Événement OnCompleted.
Un rappel asynchrone permet à un utilisateur non authentifié de fournir des données au récepteur. Cela pose des risques de sécurité pour vos scripts et applications. Pour éliminer les risques, utilisez la communication semi-synchronisée ou la communication synchrone. Pour plus d’informations, consultez Appeler une méthode.
La méthode InstancesAsync_ fonctionne uniquement pour les objets de classe. Il ne s’agit pas d’une erreur pour que la collection retournée ait zéro (0) éléments.
Spécifications
Condition requise | Valeur |
---|---|
Client minimal pris en charge |
Windows Vista |
Serveur minimal pris en charge |
Windows Server 2008 |
En-tête |
|
Bibliothèque de types |
|
DLL |
|
CLSID |
CLSID_SWbemObject |
IID |
IID_ISWbemObject |