Partager via


GetNtmsObjectAttributeA, fonction (ntmsapi.h)

[Gestionnaire de stockage amovible n’est plus disponible depuis Windows 7 et Windows Server 2008 R2.]

La fonction GetNtmsObjectAttribute récupère l’attribut étendu (nommé données privées) à partir de l’objet RSM spécifié.

Syntaxe

DWORD GetNtmsObjectAttributeA(
  [in]      HANDLE      hSession,
  [in]      LPNTMS_GUID lpObjectId,
  [in]      DWORD       dwType,
  [in]      LPCSTR      lpAttributeName,
  [out]     LPVOID      lpAttributeData,
  [in, out] LPDWORD     lpAttributeSize
);

Paramètres

[in] hSession

Gérez la session retournée par la fonction OpenNtmsSession.

[in] lpObjectId

Identificateur unique de l’objet à partir duquel récupérer les données.

[in] dwType

Type d’objet RSM. Pour obtenir la liste des types d’objets, consultez NtmsObjectsTypes.

[in] lpAttributeName

Nom de l’attribut étendu dont les données doivent être récupérées.

[out] lpAttributeData

Pointeur vers la mémoire tampon qui reçoit les données.

[in, out] lpAttributeSize

Taille de la mémoire tampon de données sur l’entrée, en octets. En sortie, la taille réelle des données, en octets.

Valeur de retour

Cette fonction retourne l’une des valeurs suivantes.

Valeur Signification
ERROR_ACCESS_DENIED
NTMS_USE_ACCESS à l’objet ou à son conteneur est refusé. D’autres erreurs de sécurité sont également possibles, mais elles indiquent une erreur de sous-système de sécurité.

Windows XP : Aucun droit d’accès n’est requis.

ERROR_DATABASE_FAILURE
Échec de la requête de base de données ou de la mise à jour.
ERROR_INSUFFICIENT_BUFFER
La taille de la mémoire tampon n’est pas spécifiée correctement. La taille correcte est retournée dans le paramètre lpAttributeSize.
ERROR_INVALID_HANDLE
La valeur spécifiée dans le paramètre hSession est NULL ou n’est pas valide.
ERROR_INVALID_PARAMETER
Le pointeur est NULL ou n’est pas valide.
ERROR_NOT_CONNECTED
Impossible de se connecter au service RSM.
ERROR_OBJECT_NOT_FOUND
L’attribut spécifié n’a pas été trouvé.
ERROR_SUCCESS
La fonction a réussi.

Remarques

La fonction GetNtmsObjectAttribute doit être exécutée sur le serveur RSM. Étant donné que la mémoire tampon d’octets n’est pas délimitée entre les systèmes de différentes architectures, l’exécution à distance de cette fonction peut entraîner des résultats imprévisibles.

Voici la liste des objets qui nécessitent des droits d’accès spéciaux.

Objet Accès
NTMS_CHANGER Nécessite NTMS_USE_ACCESS à la bibliothèque.
NTMS_CHANGER_TYPE Nécessite NTMS_USE_ACCESS à l’ordinateur.
NTMS_COMPUTER Nécessite NTMS_USE_ACCESS à l’ordinateur.
NTMS_DRIVE Nécessite NTMS_USE_ACCESS à la bibliothèque.
NTMS_DRIVE_TYPE Nécessite NTMS_USE_ACCESS à l’ordinateur.
NTMS_IEDOOR Nécessite NTMS_USE_ACCESS à la bibliothèque.
NTMS_IEPORT Nécessite NTMS_USE_ACCESS à la bibliothèque.
NTMS_LIBRARY Nécessite NTMS_USE_ACCESS à la bibliothèque.
NTMS_LIBREQUEST Nécessite NTMS_USE_ACCESS à la bibliothèque.
NTMS_LOGICAL_MEDIA Nécessite NTMS_USE_ACCESS au pool de supports du média logique.
NTMS_MEDIA_POOL Nécessite NTMS_USE_ACCESS au pool de supports.
NTMS_MEDIA_TYPE Nécessite NTMS_USE_ACCESS à l’ordinateur.
NTMS_OPREQUEST Nécessite NTMS_USE_ACCESS à l’ordinateur.
NTMS_PARTITION Nécessite NTMS_USE_ACCESS au pool multimédia du côté.
NTMS_PHYSICAL_MEDIA Nécessite NTMS_USE_ACCESS au pool de supports.
NTMS_STORAGESLOT Nécessite NTMS_USE_ACCESS à la bibliothèque.
 

Note

L’en-tête ntmsapi.h définit GetNtmsObjectAttribute en tant qu’alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.

Exigences

Exigence Valeur
client minimum pris en charge Windows XP [applications de bureau uniquement]
serveur minimum pris en charge Windows Server 2003 [applications de bureau uniquement]
plateforme cible Windows
d’en-tête ntmsapi.h
bibliothèque Ntmsapi.lib
DLL Ntmsapi.dll

Voir aussi

EnumerateNtmsObject

fonctions de gestion des objets

SetNtmsObjectAttribute