Condividi tramite


struttura TAPE_SET_POSITION (ntddtape.h)

La struttura TAPE_SET_POSITION viene utilizzata insieme alla richiesta di IOCTL_TAPE_SET_POSITION per spostare la posizione corrente sul nastro nella partizione e nell'offset specificati.

Sintassi

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

Members

Method

Indica il tipo di posizionamento da eseguire. Questo membro deve avere uno dei valori seguenti:

TAPE_REWIND

Posiziona il nastro all'inizio della partizione indicata in Partition se il supporto è partizionato e all'inizio del supporto se il supporto non è partizionato. Se il supporto non è partizionato, la partizione deve essere impostata su zero. Il membro Offset viene ignorato.

TAPE_ABSOLUTE_BLOCK

Posiziona il nastro in corrispondenza dell'indirizzo del blocco assoluto situato in corrispondenza dell'offset dall'inizio specificato da Offset. Il valore nel membro Partition viene ignorato.

TAPE_LOGICAL_BLOCK

Posiziona il nastro sull'indirizzo del blocco logico specificato da Offset, rispetto all'inizio della partizione indicata in Partition. Se il supporto non è partizionato, la partizione deve essere impostata su zero.

TAPE_PSEUDO_LOGICAL_BLOCK

Posiziona il nastro sull'indirizzo pseudologico del blocco specificato da Offset, rispetto all'inizio della partizione indicata in Partition. Se il supporto non è partizionato, la partizione deve essere impostata su zero.

TAPE_SPACE_END_OF_DATA

Posiziona il nastro alla fine della partizione indicata in Partition o se il supporto non è partizionato, alla fine del nastro. Il membro Offset viene ignorato.

TAPE_SPACE_RELATIVE_BLOCKS

A partire dalla posizione corrente, posiziona il nastro immediatamente dopo il numero di blocchi specificati da Offset. Il membro Partition viene ignorato.

TAPE_SPACE_FILEMARKS

A partire dalla posizione corrente, posiziona il nastro immediatamente dopo il numero di segni di file specificati da Offset. Il membro Partition viene ignorato.

TAPE_SPACE_SEQUENTIAL_FMKS

A partire dalla posizione corrente, posiziona il nastro immediatamente dopo l'occorrenza successiva, se presente, del numero di segni di file consecutivi specificati da Offset. Il membro Partition viene ignorato.

TAPE_SPACE_SETMARKS

A partire dalla posizione corrente, posiziona il nastro immediatamente dopo il numero di segni di impostazione specificati da Offset. Il membro Partition viene ignorato.

TAPE_SPACE_SEQUENTIAL_SMKS

A partire dalla posizione corrente, posiziona il nastro immediatamente dopo l'occorrenza successiva, se presente, del numero di segni di impostazione consecutivi specificati da Offset. Il membro Partition viene ignorato.

Partition

Indica la partizione in cui impostare la posizione del nastro. Questo membro deve avere uno dei valori seguenti:

NOT_PARTITIONED (o zero)
DATA_PARTITION
DIRECTORY_PARTITION

Se il supporto non è partizionato, questo membro è zero.

Offset

Specifica un offset il cui tipo dipende dal valore in Metodo. Se il metodo specificato posiziona il nastro in un indirizzo di blocco, Offset specifica l'offset di byte nella partizione specificata. Se il metodo specificato deve ignorare blocchi, segni di file o segni di impostazione, Offset specifica il numero da ignorare. Se Offset è zero, il nastro viene posizionato all'inizio della partizione.

Immediate

Se impostato su TRUE, indica che il dispositivo di destinazione deve restituire immediatamente lo stato. Se impostato su FALSE, indica che il dispositivo deve restituire lo stato al termine dell'operazione.

Commenti

Si noti che un'unità o un nastro potrebbe non supportare tutti i valori del metodo .

Le partizioni vengono numerate logicamente da 1 a N. Tuttavia, un numero di partizione non implica una posizione fisica sul nastro. Ad esempio, il numero di partizione 1 potrebbe non trovarsi all'inizio del supporto.

Quando l'offset specifica un numero di blocchi, segni di file o segni di impostazione per la posizione, un valore positivo N nell'offset causa il posizionamento in avanti su N blocchi, segni di file o segni di impostazione, interrompendosi sul lato end-of-partition o end-of-tape del blocco, del segno di file o del segno di impostazione. Un valore zero nell'offset non causa alcuna modifica della posizione. Un valore negativo N nell'offset causa il posizionamento inverso, verso l'inizio della partizione o del supporto nastro, su N blocchi, segni di file o segni di impostazione, interrompendosi sul lato iniziale della partizione di un blocco, un segno di file o un segno di impostazione.

Requisiti

Requisito Valore
Intestazione ntddtape.h (include Ntddtape.h, Minitape.h)

Vedi anche

IOCTL_TAPE_SET_POSITION

TapeMiniSetPosition