IoSetDeviceInterfacePropertyData, fonction (wdm.h)
La routine IoSetDeviceInterfacePropertyData modifie la valeur actuelle d’une propriété d’interface d’appareil .
Syntaxe
NTSTATUS IoSetDeviceInterfacePropertyData(
[in] PUNICODE_STRING SymbolicLinkName,
[in] const DEVPROPKEY *PropertyKey,
[in] LCID Lcid,
[in] ULONG Flags,
[in] DEVPROPTYPE Type,
[in] ULONG Size,
[in, optional] PVOID Data
);
Paramètres
[in] SymbolicLinkName
Pointeur vers une chaîne qui identifie l’instance de l’interface de l’appareil. Cette chaîne a été obtenue à partir d’un appel précédent à l'IoGetDeviceInterfaces, IoGetDeviceInterfaceAlias, ou routine IoRegisterDeviceInterface.
[in] PropertyKey
Pointeur vers une structure DEVPROPKEY qui contient la clé de propriété de l’interface d’appareil.
[in] Lcid
Spécifie un identificateur de paramètres régionaux. Définissez ce paramètre sur une valeur LCID spécifique au langage ou sur LOCALE_NEUTRAL. La LOCALE_NEUTRAL LCID spécifie que la propriété est neutre en langage (c’est-à-dire, pas spécifique à une langue). Ne définissez pas ce paramètre sur LOCALE_SYSTEM_DEFAULT ou LOCALE_USER_DEFAULT. Pour plus d’informations sur les valeurs LCID spécifiques au langage, consultez structure LCID.
[in] Flags
Définissez ce paramètre sur PLUGPLAY_PROPERTY_PERSISTENT si la valeur de propriété définie par cette routine doit persister entre les redémarrages de l’ordinateur. Sinon, définissez indicateurs sur zéro.
[in] Type
Définissez ce paramètre sur la valeur DEVPROPTYPE qui spécifie le type des données fournies dans la mémoire tampon Données.
[in] Size
Spécifie la taille, en octets, de la mémoire tampon vers laquelle données pointe.
[in, optional] Data
Pointeur vers les données de propriété de l’interface de l’appareil. Définissez ce paramètre sur NULL pour supprimer la propriété spécifiée. Si data n’est pasNULL, la routine stocke une copie interne de la valeur de propriété. La mémoire tampon pointée par Data n’a pas besoin de rester valide une fois l’appel retourné.
Valeur de retour
IoSetDeviceInterfacePropertyData retourne STATUS_SUCCESS si l’appel a réussi. Les valeurs de retour d’erreur possibles incluent les codes d’état suivants.
Retourner le code | Description |
---|---|
STATUS_UNSUCCESSFUL | La valeur LCID spécifiée n’est pas valide. |
STATUS_NOT_IMPLEMENTED | La propriété spécifiée n’est pas prise en charge. |
Remarques
Les pilotes en mode noyau utilisent la routine IoSetDeviceInterfacePropertyData pour modifier les propriétés de l’interface d’appareil définies dans le cadre du modèle de propriété d’appareil unifié . Pour plus d’informations sur les propriétés de l’interface d’appareil, consultez Propriétés de l’appareil.
Les pilotes peuvent utiliser la routine IoGetDeviceInterfacePropertyData pour obtenir la valeur actuelle d’une propriété d’interface d’appareil.
Les appelants de IoSetDeviceInterfacePropertyData doivent être en cours d’exécution à l'<IRQL = APC_LEVEL dans le contexte d’un thread système.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Disponible pour Windows 8 et versions ultérieures de Windows. |
plateforme cible | Universel |
d’en-tête | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
bibliothèque | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= APC_LEVEL |