Metodo IWbemServices::OpenNamespace (wbemcli.h)

Il metodo IWbemServices::OpenNamespace fornisce al chiamante un nuovo puntatore IWbemServices con lo spazio dei nomi figlio specificato come contesto operativo. Tutte le operazioni tramite il nuovo puntatore, ad esempio la creazione di classi o istanze, influiscono solo su tale spazio dei nomi. Lo spazio dei nomi deve essere uno spazio dei nomi figlio dell'oggetto corrente tramite il quale viene chiamato questo metodo.

Sintassi

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

Parametri

[in] strNamespace

Percorso dello spazio dei nomi di destinazione. Per altre informazioni, vedere Creazione di gerarchie in WMI. Questo spazio dei nomi può essere relativo solo allo spazio dei nomi corrente associato al puntatore all'interfaccia IWbemServices . Questo parametro non può essere un percorso assoluto o NULL.

[in] lFlags

Questo parametro può essere impostato su 0 per eseguire questa chiamata sincrona. Per eseguire questa chiamata semisynchronous, impostare lFlags su WBEM_FLAG_RETURN_IMMEDIATELY, specificare un puntatore valido per il parametro ppResult e questa chiamata restituirà immediatamente. Per altre informazioni, vedere Chiamata di un metodo.

[in] pCtx

Riservato. Questo parametro deve essere NULL.

[out] ppWorkingNamespace

Riceve l'oggetto che rappresenta il nuovo contesto dello spazio dei nomi. Il puntatore restituito ha un conteggio dei riferimenti positivo. Il chiamante deve chiamare Release su questo puntatore quando non è più necessario. Questo puntatore è impostato su NULL quando si verificano errori. Se questo parametro viene specificato, ppResult deve essere NULL.

[out] ppResult

In genere NULL. Se non è NULL, ppWorkingNamespace deve essere NULL. In questo caso, il parametro riceve un puntatore a un nuovo oggetto IWbemCallResult . Se il parametro lFlags è impostato su WBEM_FLAG_RETURN_IMMEDIATELY questa chiamata restituisce immediatamente. Il chiamante può quindi eseguire periodicamente il polling del metodo IWbemCallResult::GetResultServices fino a quando il puntatore per lo spazio dei nomi richiesto non diventa disponibile. Questo parametro è impostato su NULL quando si verifica un errore e non viene restituito un nuovo oggetto.

Nota È importante notare che quando si usa questo parametro, è necessario impostare ppResult in modo che punti a NULL prima di chiamare il metodo . Si tratta di una regola COM.
 

Valore restituito

Questo metodo restituisce un valore HRESULT che indica lo stato della chiamata al metodo. L'elenco seguente elenca il valore contenuto in hrESULT.

In caso di errore, è possibile ottenere qualsiasi informazione disponibile dalla funzione COM GetErrorInfo.

I codici di errore specifici di COM possono essere restituiti anche se i problemi di rete causano la perdita della connessione remota a Gestione Windows.

Commenti

Il metodo IWbemLocator::ConnectServer può essere usato anche per aprire lo stesso spazio dei nomi. L'unica differenza è che il metodo OpenNamespace consente di inserire percorsi oggetto relativi nel parametro Namespace per aprire in modo ricorsivo gli spazi dei nomi figlio; IWbemLocator::ConnectServer richiede un percorso completo dell'oggetto. Per altre informazioni, vedere Descrizione di un percorso oggetto dello spazio dei nomi WMI.

Ad esempio, se lo spazio dei nomi corrente associato al puntatore all'interfaccia IWbemServices è radice, l'uso di Default nel parametro Namespace restituisce un nuovo puntatore associato allo spazio dei nomi root\default.

Lo spazio dei nomi viene chiuso quando viene chiamato Release e il conteggio dei riferimenti raggiunge 0 (zero).

Requisiti

Requisito Valore
Client minimo supportato Windows Vista
Server minimo supportato Windows Server 2008
Piattaforma di destinazione Windows
Intestazione wbemcli.h (include Wbemidl.h)
Libreria 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

Vedi anche

Creazione di gerarchie all'interno di WMI

IWbemLocator::ConnectServer

Iwbemservices

Recupero di un codice di errore