IWbemHiPerfProvider::GetObjects, méthode (wbemprov.h)

La méthode IWbemHiPerfProvider::GetObjects insère les propriétés non clés des objets dans le tableau fourni. WMI appelle GetObjects en réponse à un appel IWbemServices::GetObject . Si un fournisseur n’implémente pas GetObjects, WMI tente de traiter une requête GetObject avec un appel à la méthode IWbemHiPerfProvider::CreateRefreshableObject .

Note Si un fournisseur n’implémente pas cette méthode, il doit retourner WBEM_E_PROVIDER_NOT_CAPABLE.
 

Syntaxe

HRESULT GetObjects(
  [in]      IWbemServices     *pNamespace,
  [in]      long              lNumObjects,
  [in, out] IWbemObjectAccess **apObj,
            long              lFlags,
            IWbemContext      *pContext
);

Paramètres

[in] pNamespace

Pointeur IWbemServices vers Windows Management, qui peut traiter toute requête effectuée par le fournisseur. Le fournisseur doit appeler AddRef sur ce pointeur s’il veut rappeler Windows Management pendant son exécution.

[in] lNumObjects

Entier qui contient le nombre d’objets que vous récupérez.

[in, out] apObj

Pointeur vers un tableau d’objets IWbemObjectAccess . La méthode GetObjects insère les propriétés de clé de chaque objet dans ce tableau.

lFlags

Réservé. Ce paramètre doit être 0.

pContext

Généralement NULL ; sinon, pointeur vers un objet IWbemContext requis par un ou plusieurs fournisseurs de classes dynamiques. Les valeurs de l’objet de contexte doivent être spécifiées dans la documentation du fournisseur spécifique. Pour plus d’informations sur ce paramètre, consultez Effectuer des appels à WMI.

Valeur retournée

Cette méthode retourne une valeur HRESULT qui indique le statut de l'appel de méthode. La liste suivante répertorie la valeur contenue dans un HRESULT.

Remarques

Les propriétés de clé des objets demandés seront remplies.

Exemples

L’exemple de code suivant décrit comment implémenter GetObjects.

HRESULT CMyHiPerfProvider::GetObjects(
  /* [in] */IWbemServices *pNamespace,
  /* [in] */  long lNumObjects,
  /* [in,out] */IWbemObjectAccess **apObj,
  /* [in] */long lFlags,
  /* [in] */IWbemContext *pCtx
)
{

  for ( long i = 0; i < lNumObjects; i++ )
  {
      // Validate the instance (that is, ensure
      // the path is good); if it fails, return
      // the error.

      // For example, create a method that validates
      // the IWbemObjectAccess instance and returns
      // false if validation failed.
      /*if ( !ValidateInstance( apObj[i] ) )
          return WBEM_E_NOT_FOUND;*/

      // Fill out the instance.
      // For example, create a method that assigns
      // a value to the IWbemObjectAccess instance.
      /*FillInstance( apObj[i] );*/
  }

  return WBEM_S_NO_ERROR;
}

Configuration requise

   
Client minimal pris en charge Windows Vista
Serveur minimal pris en charge Windows Server 2008
Plateforme cible Windows
En-tête wbemprov.h (include Wbemidl.h)
Bibliothèque Wbemuuid.lib
DLL Wmiprvsd.dll

Voir aussi

Développement d’un fournisseur WMI

IWbemHiPerfProvider

Création d’un fournisseur d’instance dans un fournisseur de haute performance

Fournisseur de compteurs de performances

Écriture d’un fournisseur d’instances