Fonction EnumerateNtmsObject (ntmsapi.h)
[Le Gestionnaire de stockage amovible n’est plus disponible à partir de Windows 7 et Windows Server 2008 R2.]
La fonction EnumerateNtmsObject énumère les objets RSM contenus dans le paramètre lpContainerId .
Syntaxe
DWORD EnumerateNtmsObject(
[in] HANDLE hSession,
[in] const LPNTMS_GUID lpContainerId,
[out] LPNTMS_GUID lpList,
[in, out] LPDWORD lpdwListSize,
[in] DWORD dwType,
[in] DWORD dwOptions
);
Paramètres
[in] hSession
Gérez la session retournée par la fonction OpenNtmsSession .
[in] lpContainerId
Identificateur unique du conteneur d’objets RSM dont les objets doivent être énumérés. Ce paramètre peut être le GUID d’une bibliothèque, d’un pool de médias, d’un ID de partition, d’un média physique ou d’un média logique. Pour énumérer tous les objets du type spécifié par le paramètre dwType , quel que soit le conteneur, définissez ce paramètre sur NULL. Pour plus d’informations sur la relation objet-conteneur, consultez NtmsObjectsTypes.
[out] lpList
Mémoire tampon pour le tableau de bibliothèques, lecteurs, médias ou autres ID d’objet RSM.
[in, out] lpdwListSize
Pointeur vers une variable qui spécifie le nombre maximal d’ID que la fonction peut retourner via le paramètre lpList . Au moment du retour, le nombre d’ID dans lpList est retourné dans lpdwListSize.
[in] dwType
Type d’objets à énumérer dans le conteneur lpContainerId . Si lpContainerId a la valeur NULL, tous les objets de ce type pris en charge par RSM sont énumérés. Ce paramètre peut être l’une des valeurs suivantes du type d’énumération NtmsObjectsTypes .
[in] dwOptions
Options d’énumération. Cela s’applique uniquement lorsque dwType est NTMS_MEDIA_POOL.
Windows XP : Ce paramètre est réservé et doit être défini sur zéro.
Valeur retournée
Cette fonction retourne l’une des valeurs suivantes.
Valeur | Signification |
---|---|
|
Le pointeur lpdwListSize est manquant ou lpContainerId n’est pas un conteneur valide pour le type d’objet spécifié par dwType. |
|
La taille de mémoire tampon spécifiée par lpdwListSize est trop petite pour tous les objets trouvés. La fonction tronque la liste et retourne la taille réelle dans lpdwListSize. |
|
Le handle de session est manquant ou n’est pas valide. |
|
Un échec d’allocation s’est produit pendant le traitement. |
|
Le GUID spécifié par lpContainerId n’est pas le GUID d’un objet conteneur dans la base de données. |
|
La fonction a réussi. Si lpContainerId ne contient aucun objet du type spécifié par dwType, la fonction retourne ERROR_SUCCESS et un lpdwListSize de zéro. |
Remarques
Des fonctions de sécurité sont également disponibles pour obtenir et définir des droits d’accès spécifiques sur les objets RSM.
Si le nombre d’ID disponibles spécifié dans le paramètre lpdwListSize est supérieur à la taille actuelle de la mémoire tampon, lpdwListSize retourne le nombre d’ID requis. L’application doit ensuite allouer une mémoire tampon plus importante et réessayer.
Étant donné qu’il est possible d’ajouter des ID par un autre processus, il est possible qu’une fonction suivante avec une liste redimensionnée obtienne une erreur indiquant que la liste est trop petite.
Si le paramètre lpContainerId est défini sur NULL, RSM énumère les objets de niveau supérieur (tels que les bibliothèques).
Si plusieurs objets sont répertoriés, l’objet peut être énuméré à partir de plusieurs conteneurs. Le conteneur NULL est le conteneur de niveau le plus élevé et énumère tous les objets d’un système. Par exemple, vous pouvez énumérer les médias d’une bibliothèque particulière ou de tous les supports du système.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows XP [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2003 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | ntmsapi.h |
Bibliothèque | Ntmsapi.lib |
DLL | Ntmsapi.dll |