次の方法で共有


TAPE_SET_POSITION構造体 (minitape.h)

TAPE_SET_POSITION構造体は、テープ上の現在位置を指定されたパーティションおよびオフセットに移動するために、IOCTL_TAPE_SET_POSITION 要求と組み合わせて使用されます。

構文

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

メンバーズ

Method

実行する配置の種類を示します。 このメンバーには、次のいずれかの値が必要です。

TAPE_REWIND

メディアがパーティション分割されている場合は Partition で示されているパーティションの先頭に、メディアがパーティション分割されていない場合はメディアの先頭にテープを配置します。 メディアがパーティション分割されていない場合は、パーティション を 0 に設定する必要があります。 Offset メンバーは無視されます。

TAPE_ABSOLUTE_BLOCK

Offsetで指定された先頭からのオフセットにある絶対ブロック アドレスにテープを配置します。 Partition メンバーの値は無視されます。

TAPE_LOGICAL_BLOCK

オフセットで指定された論理ブロック アドレスにテープを配置します。これは、パーティションで示されているパーティションの先頭を基準にして行います。 メディアがパーティション分割されていない場合は、パーティション を 0 に設定する必要があります。

TAPE_PSEUDO_LOGICAL_BLOCK

パーティション で示されているパーティションの先頭を基準に、Offsetで指定された擬似ブロック アドレスにテープ配置します。 メディアがパーティション分割されていない場合は、パーティション ゼロにする必要があります。

TAPE_SPACE_END_OF_DATA

Partitionで示されているパーティションの末尾、またはメディアがパーティション分割されていない場合は、テープの末尾にテープを配置します。 Offset メンバーは無視されます。

TAPE_SPACE_RELATIVE_BLOCKS

現在の位置から、Offsetで指定されたブロック数の直後にテープを配置します。 Partition メンバーは無視されます。

TAPE_SPACE_FILEMARKS

現在位置から、Offsetで指定されたファイル マークの数の直後にテープを配置します。 Partition メンバーは無視されます。

TAPE_SPACE_SEQUENTIAL_FMKS

現在の位置から開始し、次に出現する場合は、Offsetで指定された連続するファイル マークの数の直後にテープを配置します。 Partition メンバーは無視されます。

TAPE_SPACE_SETMARKS

現在位置から始めて、Offsetで指定された設定マークの数の直後にテープを配置します。 Partition メンバーは無視されます。

TAPE_SPACE_SEQUENTIAL_SMKS

現在位置から開始し、次に出現する場合は、Offsetで指定された連続する設定マークの数の直後にテープを配置します。 Partition メンバーは無視されます。

Partition

テープの位置を設定するパーティションを示します。 このメンバーには、次のいずれかの値が必要です。

NOT_PARTITIONED (またはゼロ)
DATA_PARTITION
DIRECTORY_PARTITION

メディアがパーティション分割されていない場合、このメンバーは 0 になります。

Offset

メソッド の値に依存する型オフセットを指定します。 指定したメソッドがテープをブロック アドレスに配置する場合、Offset は、指定したパーティションへのバイト オフセットを指定します。 指定したメソッドがブロック、ファイル マーク、または設定マークをスキップする場合は、スキップする数 Offset で指定します。 オフセット がゼロの場合、テープはパーティションの先頭に配置されます。

Immediate

TRUE に設定すると、ターゲット デバイスはすぐに状態を返す必要があることを示します。 FALSE に設定すると、操作の完了後にデバイスが状態を返す必要があることを示します。

備考

ドライブまたはテープでは、すべての メソッドの 値がサポートされない場合があることに注意してください。

パーティションには、論理的に 1 から N の番号が付けられます。ただし、パーティション番号は、テープ上の物理的な位置を意味するものではありません。 たとえば、パーティション番号 1 がメディアの先頭にない場合があります。

オフセットで複数のブロック、ファイルマーク、またはセットマークの位置を指定した場合、オフセットの正の値 N を指定すると、N 個のブロック、ファイルマーク、または設定マークに対する前方配置が発生し、ブロック、ファイルマーク、または設定マークのパーティションの終わりまたはテープの終わり側で停止します。 オフセットの値が 0 の場合、位置は変更されません。 オフセットの負の値 N を指定すると、N ブロック、ファイル マーク、または設定マークを超えて、パーティションまたはテープ メディアの先頭に向かって逆の位置が発生し、ブロック、ファイル マーク、または設定マークのパーティションの先頭側で停止します。

必要条件

要件 価値
ヘッダー minitape.h (Ntddtape.h、Minitape.h を含む)

関連項目

IOCTL_TAPE_SET_POSITION

TapeMiniSetPosition