Partager via


ZwOpenSymbolicLinkObject, fonction (wdm.h)

La routine ZwOpenSymbolicLinkObject ouvre un lien symbolique existant.

Syntaxe

NTSYSAPI NTSTATUS ZwOpenSymbolicLinkObject(
  [out] PHANDLE            LinkHandle,
  [in]  ACCESS_MASK        DesiredAccess,
  [in]  POBJECT_ATTRIBUTES ObjectAttributes
);

Paramètres

[out] LinkHandle

Pointeur vers une variable HANDLE qui reçoit un handle vers l’objet de lien symbolique.

[in] DesiredAccess

Spécifie une valeur ACCESS_MASK qui détermine l’accès demandé à l’objet . L’appelant a généralement spécifié GENERIC_READ, afin que le handle puisse être passé à ZwQuerySymbolicLinkObject.

[in] ObjectAttributes

Pointeur vers une structure OBJECT_ATTRIBUTES qui spécifie le nom de l’objet et d’autres attributs. Utilisez InitializeObjectAttributes pour initialiser cette structure. Si l’appelant n’est pas en cours d’exécution dans un contexte de thread système, il doit définir l’attribut OBJ_KERNEL_HANDLE lorsqu’il appelle InitializeObjectAttributes.

Valeur retournée

ZwOpenSymbolicLinkObject retourne STATUS_SUCCESS sur la réussite ou la status d’erreur appropriée.

Remarques

Une fois que le handle pointé par LinkHandle n’est plus utilisé, le pilote doit appeler ZwClose pour le fermer.

Si l’appelant n’est pas en cours d’exécution dans un contexte de thread système, il doit s’assurer que tous les handles qu’il crée sont des handles privés. Sinon, le handle est accessible par le processus dans le contexte dans lequel le pilote est en cours d’exécution. Pour plus d’informations, consultez Handles d’objet.

Si l’appel à la fonction ZwOpenSymbolicLinkObject se produit en mode utilisateur, vous devez utiliser le nom « NtOpenSymbolicLinkObject » au lieu de « ZwOpenSymbolicLinkObject ».

NtOpenSymbolicLinkObject et ZwOpenSymbolicLinkObject sont deux versions de la même routine Windows Native System Services. La routine NtOpenSymbolicLinkObject dans le noyau Windows n’est pas directement accessible aux pilotes en mode noyau. Toutefois, les pilotes en mode noyau peuvent accéder indirectement à cette routine en appelant la routine ZwOpenSymbolicLinkObject .

Pour les appels provenant de pilotes en mode noyau, les versions NtXxx et ZwXxx d’une routine Windows Native System Services peuvent se comporter différemment dans la façon dont elles gèrent et interprètent les paramètres d’entrée. Pour plus d’informations sur la relation entre les versions NtXxx et ZwXxx d’une routine, consultez Using Nt and Zw Versions of the Native System Services Routines.

Configuration requise

Condition requise Valeur
Plateforme cible Universal
En-tête wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
Bibliothèque NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
Règles de conformité DDI HwStorPortProhibitedDDIs(storport), PowerIrpDDis(wdm)

Voir aussi

ACCESS_MASK

InitializeObjectAttributes

Utilisation des versions Nt et Zw des routines des services système natifs

ZwQuerySymbolicLinkObject