TAPE_INIT_DATA_EX Struktur (minitape.h)
TAPE_INIT_DATA_EX definiert Werte und Routinen, die für einen Windows 2000-Bandminiklassentreiber spezifisch sind. Die DriverEntry-Routine für die Bandminiklasse übergibt diese Informationen an den Bandklassentreiber, um die Initialisierung des Miniklassentreibers abzuschließen.
Syntax
typedef struct _TAPE_INIT_DATA_EX {
ULONG InitDataSize;
TAPE_VERIFY_INQUIRY_ROUTINE VerifyInquiry;
BOOLEAN QueryModeCapabilitiesPage;
ULONG MinitapeExtensionSize;
TAPE_EXTENSION_INIT_ROUTINE ExtensionInit;
ULONG DefaultTimeOutValue;
TAPE_ERROR_ROUTINE TapeError;
ULONG CommandExtensionSize;
TAPE_PROCESS_COMMAND_ROUTINE CreatePartition;
TAPE_PROCESS_COMMAND_ROUTINE Erase;
TAPE_PROCESS_COMMAND_ROUTINE GetDriveParameters;
TAPE_PROCESS_COMMAND_ROUTINE GetMediaParameters;
TAPE_PROCESS_COMMAND_ROUTINE GetPosition;
TAPE_PROCESS_COMMAND_ROUTINE GetStatus;
TAPE_PROCESS_COMMAND_ROUTINE Prepare;
TAPE_PROCESS_COMMAND_ROUTINE SetDriveParameters;
TAPE_PROCESS_COMMAND_ROUTINE SetMediaParameters;
TAPE_PROCESS_COMMAND_ROUTINE SetPosition;
TAPE_PROCESS_COMMAND_ROUTINE WriteMarks;
TAPE_PROCESS_COMMAND_ROUTINE PreProcessReadWrite;
TAPE_PROCESS_COMMAND_ROUTINE TapeGetMediaTypes;
ULONG MediaTypesSupported;
TAPE_PROCESS_COMMAND_ROUTINE TapeWMIOperations;
ULONG Reserved[2];
} TAPE_INIT_DATA_EX, *PTAPE_INIT_DATA_EX;
Member
InitDataSize
Größe dieser Struktur in Bytes.
VerifyInquiry
Gibt den Einstiegspunkt der TapeMiniVerifyInquiry-Routine des BandminiVerifyInquiry-Treibers an, der bestimmt, ob der Treiber ein bestimmtes Gerät unterstützt. Diese Routine ist erforderlich.
QueryModeCapabilitiesPage
Weist den Bandklassentreiber an, wenn TRUE eine Modusfunktionsseite an die TapeMiniVerifyInquiry - und TapeMiniExtensionInit-Routinen des BandminiVerifyInit-Treibers übergeben soll.
MinitapeExtensionSize
Gibt die Größe eines treiberspezifischen Kontextbereichs in Bytes an. Wenn dieser Member nichtzero ist, darf ExtensionInit nicht NULL sein. Dieser Wert ist optional und muss auf null festgelegt werden, wenn er nicht verwendet wird.
ExtensionInit
Zeiger auf die TapeMiniExtensionInit-Routine des Bandminiclass-Treibers, die ggf. eine optionale Minibanderweiterung initialisiert. Wenn MiniTapeExtensionSize null ist, muss ExtensionInitNULL sein.
DefaultTimeOutValue
Gibt die Anzahl der Sekunden an, die der Bandklassentreiber auf eine SRB-Anforderung wartet, bevor sie abgebrochen wird. Wenn dieser Wert 0 ist, legt der Bandklassentreiber einen entsprechenden Standardwert fest. Der Bandklassentreiber verwendet immer den Standardtimeoutwert für Lese- und Schreibanforderungen. Die in der TAPE_INIT_DATA_EX-Struktur enthaltenen Routinen können den Standardtimeoutwert für Gerätesteuerungsanforderungen überschreiben, indem Sie TimeOutValue in einem SRB festlegen.
TapeError
Zeiger auf die TapeMiniTapeError-Routine des BandminiTapeError-Treibers , die die Fehlerbehandlungsaktivitäten des Bandklassentreibers erweitert. Diese Routine ist optional. Wenn eine nicht verwendet wird, muss TapeError auf NULL festgelegt werden.
CommandExtensionSize
Gibt die Größe einer Befehlserweiterung in Bytes an, die vor dem Start jedes Bandbefehls zugewiesen werden soll. Ein Bandminiklassentreiber verwendet die Befehlserweiterung, um den Kontext während der Verarbeitung von Bandbefehlen zu speichern. Die Größe und die interne Struktur werden durch den Bandminiklassentreiber definiert. Eine Befehlserweiterung ist optional. Wenn sie nicht verwendet wird, muss CommandExtensionSize auf 0 festgelegt werden.
CreatePartition
Zeiger auf die TapeMiniCreatePartition-Routine des Bandminiclass-Treibers, die eine Partition auf einem Band erstellt. Diese Routine ist erforderlich.
Erase
Zeiger auf die TapeMiniErase-Routine des BandminiErase-Treibers , die ein Band löscht. Diese Routine ist erforderlich.
GetDriveParameters
Zeiger auf die TapeMiniGetDriveParameters-Routine des BandminiGetDriveParameters-Treibers , die Anforderungen zum Abrufen von Laufwerksparametern verarbeitet. Diese Routine ist erforderlich.
GetMediaParameters
Zeiger auf die TapeMiniGetMediaParameters-Routine des BandminiGetMediaParameters-Treibers , die Anforderungen zum Abrufen von Medienparametern verarbeitet. Diese Routine ist erforderlich.
GetPosition
Zeiger auf die TapeMiniGetPosition-Routine des BandminiGetPosition-Treibers , die Anforderungen verarbeitet, um die Position eines Bandes abzurufen. Diese Routine ist erforderlich.
GetStatus
Zeiger auf die TapeMiniGetStatus-Routine des BandminiGetStatus-Treibers, die Anforderungen für status verarbeitet. Diese Routine ist erforderlich.
Prepare
Zeiger auf die TapeMiniPrepare-Routine des Bandminiclass-Treibers, die ein Bandgerät vorbereitet. Diese Routine ist erforderlich.
SetDriveParameters
Zeiger auf die TapeMiniSetDriveParameters-Routine des BandminiSetDriveParameters-Treibers , die laufwerksparameter festlegt. Diese Routine ist erforderlich.
SetMediaParameters
Zeiger auf die TapeMiniSetMediaParameters-Routine des BandminiSetMediaParameters-Treibers , die Medienparameter festlegt. Diese Routine ist erforderlich.
SetPosition
Zeiger auf die TapeMiniSetPosition-Routine des BandminiSetPosition-Treibers , die ein Band positioniert. Diese Routine ist erforderlich.
WriteMarks
Zeiger auf die TapeMiniWriteMarks-Routine des BandminiWriteMarks-Treibers , die Markierungen auf Band schreibt. Diese Routine ist erforderlich.
PreProcessReadWrite
Zeiger auf die TapeMiniPreProcessReadWrite-Routine des Bandminiclass-Treibers, die gerätespezifische Vorgänge vor allen Lese- und Schreibvorgängen ausführt. Diese Routine ist optional und wird von den meisten Treibern nicht benötigt. Wenn eine nicht verwendet wird, muss PreProcessReadWriteNULL sein.
TapeGetMediaTypes
Zeiger auf die TapeMiniGetMediaTypes-Routine des TapeMiniGetMediaTypes-Treibers , die eine Beschreibung jedes von einem Bandgerät unterstützten Medientyps erhält. Diese Routine ist erforderlich.
MediaTypesSupported
Gibt die Anzahl der vom Gerät unterstützten Medientypen an.
TapeWMIOperations
Zeiger auf die TapeMiniWMIControl-Routine .
Reserved[2]
Reserviert.
Hinweise
Die DriverEntry-Routine eines Bandminiklassentreibers ruft TapeClassZeroMemory auf, um TAPE_INIT_DATA_EX zu löschen, die erforderlichen Elemente und alle erforderlichen optionalen Member auszufüllen und TapeClassInitialize mit einem Zeiger auf diese Struktur zu verwenden.
Die Namen der Bandminiklassentreiberroutinen, die in den Memberbeschreibungen dieser Struktur angegeben sind, sind nur Platzhalternamen. Der Prototyp für diese Routinen wird in newtape.h als TAPE_PROCESS_COMMAND_ROUTINE deklariert.
Die Bedeutung der Parameter dieses Prototyps ist für jede Miniklassentreiberroutine unterschiedlich. Ausführliche Informationen zur Verwendung dieser Parameter finden Sie in den Beschreibungen für die einzelnen Miniklassentreiberroutine.
Anforderungen
Anforderung | Wert |
---|---|
Header | minitape.h (einschließlich Minitape.h) |
Weitere Informationen
<a href="DriverEntry of Tape Miniclass Driver