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

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

TAPE_ABSOLUTE_BLOCK

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

TAPE_LOGICAL_BLOCK

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

TAPE_PSEUDO_LOGICAL_BLOCK

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

TAPE_SPACE_END_OF_DATA

[ パーティション] に示されているパーティションの末尾、またはメディアがパーティション分割されていない場合は、テープの末尾にテープを配置します。 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

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

Immediate

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

注釈

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

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

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

要件

要件
Header minitape.h (Ntddtape.h、Minitape.h を含む)

こちらもご覧ください

IOCTL_TAPE_SET_POSITION

TapeMiniSetPosition