Función EnumerateNtmsObject (ntmsapi.h)
[El Administrador de almacenamiento extraíble ya no está disponible a partir de Windows 7 y Windows Server 2008 R2.]
La función EnumerateNtmsObject enumera los objetos RSM contenidos en el parámetro lpContainerId .
Sintaxis
DWORD EnumerateNtmsObject(
[in] HANDLE hSession,
[in] const LPNTMS_GUID lpContainerId,
[out] LPNTMS_GUID lpList,
[in, out] LPDWORD lpdwListSize,
[in] DWORD dwType,
[in] DWORD dwOptions
);
Parámetros
[in] hSession
Identificador de la sesión devuelta por la función OpenNtmsSession .
[in] lpContainerId
Identificador único del contenedor de objetos RSM cuyos objetos se van a enumerar. Este parámetro puede ser el GUID de una biblioteca, un grupo de medios, un identificador de partición, un medio físico o un medio lógico. Para enumerar todos los objetos del tipo especificado por el parámetro dwType , independientemente del contenedor, establezca este parámetro en NULL. Para obtener más información sobre la relación object-container, vea NtmsObjectsTypes.
[out] lpList
Búfer de la matriz de bibliotecas, unidades, medios u otros identificadores de objeto de RSM.
[in, out] lpdwListSize
Puntero a una variable que especifica el número máximo de identificadores que la función puede devolver a través del parámetro lpList . En el momento de la devolución, el número de identificadores en lpList se devuelve en lpdwListSize.
[in] dwType
Tipo de objetos que se van a enumerar en el contenedor lpContainerId . Si lpContainerId es NULL, se enumeran todos los objetos de este tipo admitidos por RSM. Este parámetro puede ser uno de los valores siguientes del tipo de enumeración NtmsObjectsTypes .
[in] dwOptions
Opciones de enumeración. Esto solo es aplicable cuando dwType es NTMS_MEDIA_POOL.
Windows XP: Este parámetro está reservado y debe establecerse en cero.
Valor devuelto
Esta función devuelve uno de los valores siguientes.
Valor | Significado |
---|---|
|
Falta el puntero lpdwListSize o lpContainerId no es un contenedor válido para el tipo de objeto especificado por dwType. |
|
El tamaño del búfer especificado por lpdwListSize es demasiado pequeño para todos los objetos encontrados. La función trunca la lista y devuelve el tamaño real en lpdwListSize. |
|
Falta el identificador de sesión o no es válido. |
|
Error de asignación durante el procesamiento. |
|
El GUID especificado por lpContainerId no es el GUID de ningún objeto contenedor de la base de datos. |
|
La función se realizó correctamente. Si lpContainerId no contiene ningún objeto del tipo especificado por dwType, la función devuelve ERROR_SUCCESS y un lpdwListSize de cero. |
Comentarios
Las funciones de seguridad también están disponibles para obtener y establecer derechos de acceso específicos en objetos RSM.
Si el número disponible de identificadores especificados en el parámetro lpdwListSize es mayor que el tamaño del búfer actual, lpdwListSize devuelve el número de identificadores necesarios. A continuación, la aplicación debe asignar un búfer más grande e intentarlo de nuevo.
Dado que es posible que otro proceso agregue los identificadores, es posible que una función posterior con una lista cambia de tamaño para obtener un error que indica que la lista es demasiado pequeña.
Si el parámetro lpContainerId se establece en NULL, RSM enumera objetos de nivel superior (como bibliotecas).
Si se muestra más de un objeto, el objeto se puede enumerar desde más de un contenedor. El contenedor NULL es el contenedor de nivel superior y enumera todos los objetos de un sistema. Por ejemplo, puede enumerar medios en una biblioteca determinada o en todos los medios del sistema.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows XP [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2003 [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | ntmsapi.h |
Library | Ntmsapi.lib |
Archivo DLL | Ntmsapi.dll |