Freigeben über


Analysepunkttags

Jeder Analysepunkt verfügt über ein Bezeichnertag, sodass Sie effizient zwischen den verschiedenen Typen von Analysepunkten unterscheiden können, ohne die benutzerdefinierten Daten im Analysepunkt untersuchen zu müssen. Das System verwendet einen Satz vordefinierter Tags und einen Bereich von Tags, die für Microsoft reserviert sind. Wenn Sie beim Festlegen eines Analysepunkts eine der reservierten Tags verwenden, schlägt der Vorgang fehl. Tags, die in diesen Bereichen nicht enthalten sind, sind nicht reserviert und stehen für Ihre Anwendung zur Verfügung.

Wenn Sie einen Analysepunkt festlegen, müssen Sie die Daten markieren, die im Analysepunkt platziert werden sollen. Nachdem der Analysepunkt eingerichtet wurde, schlägt ein neuer Satzvorgang fehl, wenn das Tag für die neuen Daten nicht mit dem Tag für die vorhandenen Daten übereinstimmt. Wenn die Tags übereinstimmen, überschreibt der Set-Vorgang den vorhandenen Analysepunkt.

Verwenden Sie zum Abrufen des Analysepunkttags die funktion FindFirstFile. Wenn der dwFileAttributes Member das attribut FILE_ATTRIBUTE_REPARSE_POINT enthält, gibt das dwReserved0 Member den Analysepunkt an.

Taginhalt

Analysetags werden als DWORD--Werte gespeichert. Die Bits definieren bestimmte Attribute, wie im folgenden Diagramm dargestellt.

   3 3 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1
   1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0
  +-+-+-+-+-----------------------+-------------------------------+
  |M|R|N|R|     Reserved bits     |      Reparse tag value        |
  +-+-+-+-+-----------------------+-------------------------------+

Die niedrigen 16 Bit bestimmen die Art des Analysepunkts. Die hohen 16 Bit haben 12 Bit, die für die zukünftige Verwendung reserviert sind, und 4 Bits, die bestimmte Attribute der Tags und die durch den Analysepunkt dargestellten Daten kennzeichnen. In der folgenden Tabelle werden diese Bits beschrieben.

Bit Beschreibung
M Microsoft Bit. Wenn dieses Bit festgelegt ist, befindet sich das Tag im Besitz von Microsoft. Alle anderen Tags müssen für dieses Bit null verwenden.
R Reserviert; muss null für alle Nicht-Microsoft-Tags sein.
N Namens-Surrogate-Bit. Wenn dieses Bit festgelegt ist, stellt die Datei oder das Verzeichnis eine andere benannte Entität im System dar.

Die folgenden Makros sind zum Testen von Tags vorhanden:

Jedes Makro gibt einen Wert ungleich Null zurück, wenn das zugeordnete Bit festgelegt ist.

Im Folgenden sind die vordefinierten Analysewerte von Microsoft aufgeführt. sie werden in WinNT.h definiert:

  • IO_REPARSE_TAG_AF_UNIX
  • IO_REPARSE_TAG_APPEXECLINK
  • IO_REPARSE_TAG_CLOUD
  • IO_REPARSE_TAG_CLOUD_1
  • IO_REPARSE_TAG_CLOUD_2
  • IO_REPARSE_TAG_CLOUD_3
  • IO_REPARSE_TAG_CLOUD_4
  • IO_REPARSE_TAG_CLOUD_5
  • IO_REPARSE_TAG_CLOUD_6
  • IO_REPARSE_TAG_CLOUD_7
  • IO_REPARSE_TAG_CLOUD_8
  • IO_REPARSE_TAG_CLOUD_9
  • IO_REPARSE_TAG_CLOUD_A
  • IO_REPARSE_TAG_CLOUD_B
  • IO_REPARSE_TAG_CLOUD_C
  • IO_REPARSE_TAG_CLOUD_D
  • IO_REPARSE_TAG_CLOUD_E
  • IO_REPARSE_TAG_CLOUD_F
  • IO_REPARSE_TAG_CLOUD_MASK
  • IO_REPARSE_TAG_CSV
  • IO_REPARSE_TAG_DEDUP
  • IO_REPARSE_TAG_DFS
  • IO_REPARSE_TAG_DFSR
  • IO_REPARSE_TAG_FILE_PLACEHOLDER
  • IO_REPARSE_TAG_GLOBAL_REPARSE
  • IO_REPARSE_TAG_HSM
  • IO_REPARSE_TAG_HSM2
  • IO_REPARSE_TAG_MOUNT_POINT
  • IO_REPARSE_TAG_NFS
  • IO_REPARSE_TAG_ONEDRIVE
  • IO_REPARSE_TAG_PROJFS
  • IO_REPARSE_TAG_PROJFS_TOMBSTONE
  • IO_REPARSE_TAG_SIS
  • IO_REPARSE_TAG_STORAGE_SYNC
  • IO_REPARSE_TAG_SYMLINK
  • IO_REPARSE_TAG_UNHANDLED
  • IO_REPARSE_TAG_WCI
  • IO_REPARSE_TAG_WCI_1
  • IO_REPARSE_TAG_WCI_LINK
  • IO_REPARSE_TAG_WCI_LINK_1
  • IO_REPARSE_TAG_WCI_TOMBSTONE
  • IO_REPARSE_TAG_WIM
  • IO_REPARSE_TAG_WOF

Um die Eindeutigkeit von Tags sicherzustellen, bietet Microsoft einen Mechanismus zum Verteilen neuer Tags. Weitere Informationen finden Sie im Installable File System (IFS) Kit.