Método IWbemServices::OpenNamespace (wbemcli.h)
El método IWbemServices::OpenNamespace proporciona al autor de la llamada un nuevo puntero IWbemServices que tiene el espacio de nombres secundario especificado como contexto operativo. Todas las operaciones a través del nuevo puntero, como la creación de clases o instancias, solo afectan a ese espacio de nombres. El espacio de nombres debe ser un espacio de nombres secundario del objeto actual mediante el que se llama a este método.
Sintaxis
HRESULT OpenNamespace(
[in] const BSTR strNamespace,
[in] long lFlags,
[in] IWbemContext *pCtx,
[out] IWbemServices **ppWorkingNamespace,
[out] IWbemCallResult **ppResult
);
Parámetros
[in] strNamespace
Ruta de acceso al espacio de nombres de destino. Para obtener más información, vea Crear jerarquías en WMI. Este espacio de nombres solo puede ser relativo al espacio de nombres actual asociado al puntero de interfaz IWbemServices . Este parámetro no puede ser una ruta de acceso absoluta o NULL.
[in] lFlags
Este parámetro se puede establecer en 0 para que esta sea una llamada sincrónica. Para realizar esta llamada semiincrónica, establezca lFlags en WBEM_FLAG_RETURN_IMMEDIATELY, proporcione un puntero válido para el parámetro ppResult y esta llamada se devolverá inmediatamente. Para más información, vea Llamada a un método.
[in] pCtx
Reservado. Este parámetro debe ser NULL.
[out] ppWorkingNamespace
Recibe el objeto que representa el nuevo contexto de espacio de nombres. El puntero devuelto tiene un recuento de referencias positivo. El autor de la llamada debe llamar a Release en este puntero cuando ya no sea necesario. Este puntero se establece en NULL cuando hay errores. Si se especifica este parámetro, ppResult debe ser NULL.
[out] ppResult
Normalmente NULL. Si no es NULL, ppWorkingNamespace debe ser NULL. En este caso, el parámetro recibe un puntero a un nuevo objeto IWbemCallResult . Si el parámetro lFlags se establece en WBEM_FLAG_RETURN_IMMEDIATELY esta llamada devuelve inmediatamente. A continuación, el autor de la llamada puede sondear periódicamente el método IWbemCallResult::GetResultServices hasta que el puntero del espacio de nombres solicitado esté disponible. Este parámetro se establece para que apunte a NULL cuando se produce un error y no se devuelve un nuevo objeto.
Valor devuelto
Este método devuelve un valor HRESULT que indica el estado de la llamada al método. En la lista siguiente se muestra el valor contenido en un HRESULT.
Si se produce un error, puede obtener cualquier información disponible de la función COM GetErrorInfo.
También se pueden devolver códigos de error específicos de COM si los problemas de red hacen que pierdas la conexión remota a la administración de Windows.
Comentarios
El método IWbemLocator::ConnectServer también se puede usar para abrir el mismo espacio de nombres. La única diferencia es que el método OpenNamespace permite colocar rutas de acceso de objeto relativas en el parámetro Namespace para abrir espacios de nombres secundarios de forma recursiva; IWbemLocator::ConnectServer requiere una ruta de acceso de objeto completa. Para obtener más información, vea Descripción de una ruta de acceso del objeto de espacio de nombres WMI.
Por ejemplo, si el espacio de nombres actual asociado al puntero de interfaz IWbemServices es raíz, el uso de Default en el parámetro Namespace produce un nuevo puntero enlazado al espacio de nombres root\default.
El espacio de nombres se cierra cuando se llama a Release y el recuento de referencias alcanza 0 (cero).
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows Vista |
Servidor mínimo compatible | Windows Server 2008 |
Plataforma de destino | Windows |
Encabezado | wbemcli.h (include Wbemidl.h) |
Library | Wbemuuid.lib |
Archivo 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 |