Partager via


structure TAPE_SET_POSITION (ntddtape.h)

La structure TAPE_SET_POSITION est utilisée conjointement avec la requête IOCTL_TAPE_SET_POSITION pour déplacer la position actuelle sur la bande vers la partition et le décalage spécifiés.

Syntaxe

typedef struct _TAPE_SET_POSITION {
  ULONG         Method;
  ULONG         Partition;
  LARGE_INTEGER Offset;
  BOOLEAN       Immediate;
} TAPE_SET_POSITION, *PTAPE_SET_POSITION;

Membres

Method

Indique le type de positionnement à effectuer. Ce membre doit avoir l’une des valeurs suivantes :

TAPE_REWIND

Positionne la bande au début de la partition indiquée dans partition si le support est partitionné et au début du média si le média n’est pas partitionné. Si le support n’est pas partitionné, partition doit être défini sur zéro. Le membre Offset est ignoré.

TAPE_ABSOLUTE_BLOCK

Positionne la bande à l’adresse de bloc absolu située au décalage du début spécifié par Offset. La valeur du membre partition est ignorée.

TAPE_LOGICAL_BLOCK

Positionne la bande sur l’adresse de bloc logique spécifiée par offset, par rapport au début de la partition indiquée dans partition. Si le support n’est pas partitionné, partition doit être défini sur zéro.

TAPE_PSEUDO_LOGICAL_BLOCK

Positionne la bande sur l’adresse de bloc pseudological spécifiée par Offset, par rapport au début de la partition indiquée dans partition. Si le support n’est pas partitionné, partition doit être égal à zéro.

TAPE_SPACE_END_OF_DATA

Positionne la bande à la fin de la partition indiquée dans partition, ou si le support n’est pas partitionné, à la fin de la bande. Le membre Offset est ignoré.

TAPE_SPACE_RELATIVE_BLOCKS

À partir de la position actuelle, positionne la bande immédiatement après le nombre de blocs spécifiés par Offset. Le membre partition est ignoré.

TAPE_SPACE_FILEMARKS

À partir de la position actuelle, positionne la bande immédiatement après le nombre de marques de fichier spécifiées par Offset. Le membre partition est ignoré.

TAPE_SPACE_SEQUENTIAL_FMKS

À partir de la position actuelle, positionne la bande immédiatement après l’occurrence suivante, le cas échéant, du nombre de marques de fichier consécutives spécifiées par Offset. Le membre partition est ignoré.

TAPE_SPACE_SETMARKS

À partir de la position actuelle, positionne la bande immédiatement après le nombre de filigranes spécifiés par Offset. Le membre partition est ignoré.

TAPE_SPACE_SEQUENTIAL_SMKS

À partir de la position actuelle, positionne la bande immédiatement après l’occurrence suivante, le cas échéant, du nombre de setmarks consécutifs spécifiés par Offset. Le membre partition est ignoré.

Partition

Indique la partition dans laquelle définir la position de la bande. Ce membre doit avoir l’une des valeurs suivantes :

NOT_PARTITIONED (ou zéro)
DATA_PARTITION
DIRECTORY_PARTITION

Si le média n’est pas partitionné, ce membre est égal à zéro.

Offset

Spécifie un décalage dont le type dépend de la valeur dans Méthode. Si la méthode spécifiée positionne la bande sur une adresse de bloc, Offset spécifie le décalage d’octet dans la partition spécifiée. Si la méthode spécifiée consiste à ignorer des blocs, des filigranes de fichier ou des filigranes, Offset spécifie le nombre à ignorer. Si décalage est égal à zéro, la bande est positionnée au début de la partition.

Immediate

Lorsqu’il est défini sur TRUE, indique que l’appareil cible doit retourner immédiatement l’état. Lorsqu’il est défini sur FALSE, indique que l’appareil doit retourner l’état une fois l’opération terminée.

Remarques

Notez qu’un lecteur ou une bande ne prend pas en charge toutes les valeurs méthode.

Les partitions sont numérotées logiquement de 1 à N. Toutefois, un numéro de partition n’implique pas de position physique sur la bande. Par exemple, le numéro de partition 1 n’est peut-être pas au début du média.

Lorsque le décalage spécifie un certain nombre de blocs, de filigranes de fichier ou de filigranes à positionner, une valeur positive N dans le décalage entraîne le positionnement vers l’avant sur N blocs, filigranes de fichier ou setmarks, arrêtant sur le côté fin de partition ou de fin de bande du bloc, de la marque de fichier ou du setmark. Une valeur nulle dans le décalage n’entraîne aucun changement de position. Une valeur négative N dans le décalage provoque le positionnement inverse, vers le début de la partition ou du support de bande, sur N blocs, filigranes de fichier ou setmarks, arrêtant du côté début de partition d’un bloc, d’un bloc, d’un filigrane de fichier ou d’un setmark.

Exigences

Exigence Valeur
d’en-tête ntddtape.h (include Ntddtape.h, Minitape.h)

Voir aussi

IOCTL_TAPE_SET_POSITION

TapeMiniSetPosition