GetNtmsObjectAttributeA, fonction (ntmsapi.h)

[Le 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

Handle à 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 en entrée, en octets. En sortie, taille réelle des données, en octets.

Valeur retournée

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 ou de la mise à jour de la base de données.
ERROR_INSUFFICIENT_BUFFER
La taille de la mémoire tampon n’est pas correctement spécifiée. 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 a la valeur NULL ou n’est pas valide.
ERROR_NOT_CONNECTED
Impossible de se connecter au service RSM.
ERROR_OBJECT_NOT_FOUND
L’attribut spécifié est introuvable.
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 est non 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.

Object Access
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 médias du média logique.
NTMS_MEDIA_POOL Nécessite NTMS_USE_ACCESS au pool de médias.
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 de médias du côté.
NTMS_PHYSICAL_MEDIA Nécessite NTMS_USE_ACCESS au pool de médias.
NTMS_STORAGESLOT Nécessite NTMS_USE_ACCESS à la bibliothèque.
 

Notes

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. La combinaison 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.

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

Voir aussi

EnumerateNtmsObject

Fonctions de gestion des objets

SetNtmsObjectAttribute