Partager via


Opérations de point d’analyse

Pour déterminer si un système de fichiers prend en charge les points d’analyse, appelez la fonction GetVolumeInformation et examinez l’indicateur de bits FILE_SUPPORTS_REPARSE_POINTS .

La fonction DeviceIoControl vous permet de définir, modifier, obtenir et supprimer des points d’analyse. Le tableau suivant décrit les opérations de point d’analyse que vous pouvez effectuer à l’aide de DeviceIoControl.

Opération Description
FSCTL_SET_REPARSE_POINT Permet au programme appelant de définir un nouveau point d’analyse ou de modifier un point existant.
FSCTL_GET_REPARSE_POINT Obtient les informations stockées dans un point d’analyse existant.
FSCTL_DELETE_REPARSE_POINT Supprime un point d’analyse existant.

Si vous modifiez, obtenez ou supprimez un point d’analyse, vous devez spécifier la même balise d’analyse dans l’opération contenue dans le fichier. Sinon, l’opération échoue avec l’erreur ERROR_REPARSE_TAG_MISMATCH. Si vous modifiez ou supprimez un point d’analyse, vous devez également spécifier le GUID d’analyse dans l’opération contenue dans le fichier. Sinon, l’opération échoue avec l’erreur ERROR_REPARSE_ATTRIBUTE_CONFLICT.

Pour déterminer si un fichier ou un répertoire contient un point d’analyse, utilisez la fonction GetFileAttributes . Si le fichier ou le répertoire a un point d’analyse associé, l’attribut FILE_ATTRIBUTE_REPARSE_POINT est défini.

Pour remplacer un point d’analyse existant sans avoir déjà de handle dans le fichier ou le répertoire, appelez CreateFile avec FILE_FLAG_OPEN_REPARSE_POINT. Cet indicateur vous permet d’ouvrir le fichier si le filtre de système de fichiers correspondant est installé ou non et fonctionne correctement.