Freigeben über


GetTapeParameters-Funktion (winbase.h)

Die GetTapeParameters-Funktion ruft Informationen ab, die das Band oder das Bandlaufwerk beschreiben.

Syntax

DWORD GetTapeParameters(
  [in]  HANDLE  hDevice,
  [in]  DWORD   dwOperation,
  [out] LPDWORD lpdwSize,
  [out] LPVOID  lpTapeInformation
);

Parameter

[in] hDevice

Verarbeiten Sie das Gerät, über das Informationen gesucht werden. Dieses Handle wird mithilfe der CreateFile-Funktion erstellt.

[in] dwOperation

Typ der angeforderten Informationen. Dieser Parameter muss einen der folgenden Werte aufweisen.

Wert Bedeutung
GET_TAPE_DRIVE_INFORMATION
1
Ruft Informationen zum Bandgerät ab.
GET_TAPE_MEDIA_INFORMATION
0
Ruft Informationen zum Band auf dem Bandgerät ab.

[out] lpdwSize

Zeiger auf eine Variable, die die Größe des durch den lpTapeInformation-Parameter angegebenen Puffers in Bytes empfängt. Wenn der Puffer zu klein ist, erhält dieser Parameter die erforderliche Größe.

[out] lpTapeInformation

Zeiger auf eine Struktur, die die angeforderten Informationen enthält. Wenn der dwOperation-ParameterGET_TAPE_MEDIA_INFORMATION ist, verweist lpTapeInformation auf eine TAPE_GET_MEDIA_PARAMETERS-Struktur .

Wenn dwOperationGET_TAPE_DRIVE_INFORMATION ist, verweist lpTapeInformation auf eine TAPE_GET_DRIVE_PARAMETERS-Struktur .

Rückgabewert

Wenn die Funktion erfolgreich ist, wird der Rückgabewert NO_ERROR.

Wenn die Funktion fehlschlägt, kann sie einen der folgenden Fehlercodes zurückgeben.

Fehlercode BESCHREIBUNG
ERROR_BEGINNING_OF_MEDIA
1102L
Ein Versuch, vor dem Anfang des mittleren Markers auf Daten zuzugreifen, ist fehlgeschlagen.
ERROR_BUS_RESET
1111L
Im Bus wurde eine Zurücksetzungsbedingung erkannt.
ERROR_DEVICE_NOT_PARTITIONED
1107L
Die Partitionsinformationen konnten nicht gefunden werden, wenn ein Band geladen wurde.
ERROR_END_OF_MEDIA
1100L
Der Bandendemarker wurde während eines Vorgangs erreicht.
ERROR_FILEMARK_DETECTED
1101L
Während eines Vorgangs wurde ein Filemark erreicht.
ERROR_INVALID_BLOCK_LENGTH
1106L
Die Blockgröße ist auf einem neuen Band in einer mehrvolumen Partition falsch.
ERROR_MEDIA_CHANGED
1110L
Das Band, das sich auf dem Laufwerk befand, wurde ersetzt oder entfernt.
ERROR_NO_DATA_DETECTED
1104L
Der Datenendemarker wurde während eines Vorgangs erreicht.
ERROR_NO_MEDIA_IN_DRIVE
1112L
Das Laufwerk enthält keine Medien.
ERROR_NOT_SUPPORTED
50L
Der Bandtreiber unterstützt keine angeforderte Funktion.
ERROR_PARTITION_FAILURE
1105L
Das Band konnte nicht partitioniert werden.
ERROR_SETMARK_DETECTED
1103L
Während eines Vorgangs wurde ein Setmark erreicht.
ERROR_UNABLE_TO_LOCK_MEDIA
1108L
Fehler beim Versuch, den Auswurfmechanismus zu sperren.
ERROR_UNABLE_TO_UNLOAD_MEDIA
1109L
Fehler beim Entladen des Bandes.
ERROR_WRITE_PROTECT
19L
Das Medium ist schreibgeschützt.

Hinweise

Die Werte des Blockgrößenbereichs (Maximum und Minimum), die von der GetTapeParameters-Funktion zurückgegeben werden, die mit dem dwOperation-Parameter auf den GET_TAPE_DRIVE_INFORMATION Wert festgelegt wird, geben Systemgrenzwerte und keine Laufwerksgrenzwerte an. Es sind jedoch das Bandlaufwerk und die im Laufwerk vorhandenen Medien, die die tatsächlichen Grenzwerte für die Blockgröße bestimmen. Daher kann eine Anwendung möglicherweise nicht alle Blockgrößen festlegen, die in dem Bereich erwähnt werden, der durch Angabe von GET_TAPE_DRIVE_INFORMATION in dwOperation abgerufen wird.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows XP [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile winbase.h (Windows.h einschließen)
Bibliothek Kernel32.lib
DLL Kernel32.dll

Siehe auch

CreateFile

SetTapeParameters

TAPE_GET_DRIVE_PARAMETERS

TAPE_GET_MEDIA_PARAMETERS