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) |