Méthode IWbemServices ::OpenNamespace (wbemcli.h)

La méthode IWbemServices ::OpenNamespace fournit à l’appelant un nouveau pointeur IWbemServices qui a l’espace de noms enfant spécifié comme contexte d’exploitation. Toutes les opérations effectuées via le nouveau pointeur, telles que la création d’une classe ou d’un instance, affectent uniquement cet espace de noms. L’espace de noms doit être un espace de noms enfant de l’objet actuel via lequel cette méthode est appelée.

Syntaxe

HRESULT OpenNamespace(
  [in]  const BSTR      strNamespace,
  [in]  long            lFlags,
  [in]  IWbemContext    *pCtx,
  [out] IWbemServices   **ppWorkingNamespace,
  [out] IWbemCallResult **ppResult
);

Paramètres

[in] strNamespace

Chemin d’accès à l’espace de noms cible. Pour plus d’informations, consultez Création de hiérarchies dans WMI. Cet espace de noms ne peut être relatif qu’à l’espace de noms actuel associé au pointeur d’interface IWbemServices . Ce paramètre ne peut pas être un chemin absolu ou NULL.

[in] lFlags

Ce paramètre peut être défini sur 0 pour en faire un appel synchrone. Pour en faire un appel semi-synchrone, définissez lFlagssur WBEM_FLAG_RETURN_IMMEDIATELY, fournissez un pointeur valide pour le paramètre ppResult , et cet appel sera retourné immédiatement. Pour plus d’informations, consultez Appel d’une méthode.

[in] pCtx

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

[out] ppWorkingNamespace

Reçoit l’objet qui représente le nouveau contexte d’espace de noms. Le pointeur retourné a un nombre de références positif. L’appelant doit appeler Release sur ce pointeur quand il n’est plus nécessaire. Ce pointeur est défini sur NULL en cas d’erreurs. Si ce paramètre est spécifié, ppResult doit avoir la valeur NULL.

[out] ppResult

Généralement NULL. Si ce n’est pas null, ppWorkingNamespace doit avoir la valeur NULL. Dans ce cas, le paramètre reçoit un pointeur vers un nouvel objet IWbemCallResult . Si le paramètre lFlags est défini sur WBEM_FLAG_RETURN_IMMEDIATELY cet appel retourne immédiatement. Ensuite, l’appelant peut interroger régulièrement la méthode IWbemCallResult ::GetResultServices jusqu’à ce que le pointeur de l’espace de noms demandé soit disponible. Ce paramètre est défini pour pointer sur NULL en cas d’erreur et qu’aucun nouvel objet n’est retourné.

Note Il est important de noter que lorsque vous utilisez ce paramètre, vous devez définir ppResult pour qu’il pointe sur NULL avant d’appeler la méthode . Il s’agit d’une règle COM.
 

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.

En cas d’échec, vous pouvez obtenir toutes les informations disponibles à partir de la fonction COM GetErrorInfo.

Des codes d’erreur spécifiques à COM peuvent également être retournés si des problèmes réseau vous font perdre la connexion à distance à Windows Management.

Remarques

La méthode IWbemLocator ::ConnectServer peut également être utilisée pour ouvrir le même espace de noms. La seule différence est que la méthode OpenNamespace vous permet de placer des chemins d’accès relatifs aux objets dans le paramètre Namespace pour ouvrir les espaces de noms enfants de manière récursive ; IWbemLocator ::ConnectServer nécessite un chemin d’accès complet à l’objet. Pour plus d’informations, consultez Description d’un chemin d’objet d’espace de noms WMI.

Par exemple, si l’espace de noms actuel associé au pointeur d’interface IWbemServices est root, l’utilisation de Default dans le paramètre Namespace génère un nouveau pointeur lié à l’espace de noms root\default.

L’espace de noms est fermé lorsque Release est appelé et que le nombre de références atteint 0 (zéro).

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows Vista
Serveur minimal pris en charge Windows Server 2008
Plateforme cible Windows
En-tête wbemcli.h (include Wbemidl.h)
Bibliothèque Wbemuuid.lib
DLL Fastprox.dll ; Esscli.dll ; FrameDyn.dll ; FrameDynOS.dll ; Ntevt.dll ; Stdprov.dll ; Viewprov.dll ; Wbemcomn.dll ; Wbemcore.dll ; Wbemess.dll ; Wbemsvc.dll ; Wmipicmp.dll ; Wmidcprv.dll ; Wmipjobj.dll ; Wmiprvsd.dll

Voir aussi

Création de hiérarchies dans WMI

IWbemLocator ::ConnectServer

IWbemServices

Récupération d’un code d’erreur