SetNtmsObjectAttributeW, fonction (ntmsapi.h)
[Gestionnaire de stockage amovible n’est plus disponible depuis Windows 7 et Windows Server 2008 R2.]
La fonction SetNtmsObjectAttribute crée un attribut étendu (nommé données privées) dans l’objet RSM spécifié.
Syntaxe
DWORD SetNtmsObjectAttributeW(
[in] HANDLE hSession,
[in] LPNTMS_GUID lpObjectId,
[in] DWORD dwType,
[in] LPCWSTR lpAttributeName,
[in] LPVOID lpAttributeData,
DWORD AttributeSize
);
Paramètres
[in] hSession
Gérez la session retournée par la fonction OpenNtmsSession.
[in] lpObjectId
GUID de l’objet RSM pour lequel l’attribut étendu doit être créé.
[in] dwType
Type d’objet RSM. Pour obtenir la liste des types d’objets, consultez NtmsObjectsTypes.
[in] lpAttributeName
Nom de l’attribut étendu à créer.
[in] lpAttributeData
Données définies par l’utilisateur.
AttributeSize
Taille de la mémoire tampon lpAttributeData, en octets. D
Valeur de retour
Cette fonction retourne l’une des valeurs suivantes.
Valeur | Signification |
---|---|
|
NTMS_MODIFY_ACCESS est refusé à l’objet ou aucune modification n’est autorisée pour le type d’objet spécifié (voir Remarques). 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. |
|
Échec de la mise à jour de la base de données. |
|
La valeur spécifiée dans le paramètre hSession est NULL ou n’est pas valide. |
|
Le nom ou l’attribut n’est pas valide. La valeur NTMS_MAXATTR_NAMELEN définit la longueur maximale du nom d’attribut. La longueur inclut une NULL. |
|
Le pointeur est NULL ou n’est pas valide. |
|
L’attribut spécifié est supérieur ou égal à NTMS_MAXATTR_LENGTH. |
|
Impossible de se connecter au service RSM. |
|
Le GUID n’est pas valide. |
|
La fonction a réussi. |
Remarques
La fonction SetNtmsObjectAttribute doit être exécutée sur le serveur RSM spécifié. É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.
Pour supprimer un attribut, effectuez un ensemble de l’attribut avec une longueur de zéro.
Voici la liste des objets qui nécessitent des droits d’accès spéciaux.
Objet | Accès |
---|---|
NTMS_CHANGER | Nécessite NTMS_MODIFY_ACCESS à la bibliothèque. |
NTMS_CHANGER_TYPE | Nécessite NTMS_MODIFY_ACCESS à l’ordinateur. |
NTMS_COMPUTER | Nécessite NTMS_MODIFY_ACCESS à l’ordinateur. |
NTMS_DRIVE | Nécessite NTMS_MODIFY_ACCESS à la bibliothèque. |
NTMS_DRIVE_TYPE | Nécessite NTMS_MODIFY_ACCESS à l’ordinateur. |
NTMS_IEDOOR | Nécessite NTMS_MODIFY_ACCESS à la bibliothèque. |
NTMS_IEPORT | Nécessite NTMS_MODIFY_ACCESS à la bibliothèque. |
NTMS_LIBRARY | Nécessite NTMS_MODIFY_ACCESS à la bibliothèque. |
NTMS_LIBREQUEST | Nécessite NTMS_MODIFY_ACCESS à la bibliothèque. |
NTMS_LOGICAL_MEDIA | Nécessite NTMS_MODIFY_ACCESS au pool de supports du média logique. |
NTMS_MEDIA_POOL | Nécessite NTMS_MODIFY_ACCESS au pool de supports. |
NTMS_MEDIA_TYPE | Nécessite NTMS_MODIFY_ACCESS à l’ordinateur. |
NTMS_OPREQUEST | Nécessite NTMS_MODIFY_ACCESS à l’ordinateur. |
NTMS_PARTITION | Nécessite NTMS_MODIFY_ACCESS au pool multimédia du côté. |
NTMS_PHYSICAL_MEDIA | Nécessite NTMS_MODIFY_ACCESS au pool de supports. |
NTMS_STORAGESLOT | Nécessite NTMS_MODIFY_ACCESS à la bibliothèque. |
Note
L’en-tête ntmsapi.h définit SetNtmsObjectAttribute 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 |