TapeClassInitialize-Funktion (minitape.h)
Die TapeClassInitialize-Routine führt einen Großteil der Treiber- und Geräteinitialisierung im Auftrag eines Miniklassentreibers durch. TapeClassInitialize lädt die Einstiegspunkte für Bandklassentreiber für Band-E/A-Anforderungen in die Datenstruktur des Miniklassentreibers, sucht und beansprucht nicht beanspruchte Bandgeräte, die der Miniklassentreiber unterstützt, und ordnet und initialisiert die Betriebssystemressourcen für den Miniklassentreiber und seine Geräte. TapeClassInitialize verwendet in TapeInitData bereitgestellte miniklassenspezifische Informationen und ruft für treiberspezifische Vorgänge zurück an den Band-Miniklassentreiber.
Syntax
SCSIPORT_API ULONG TapeClassInitialize(
[in] PVOID Argument1,
[in] PVOID Argument2,
[in] PTAPE_INIT_DATA_EX TapeInitData
);
Parameter
[in] Argument1
Zeiger auf Treiberkontextinformationen, die an die DriverEntry-Routine des Band-Miniklassentreibers übergeben wurden. Das Format der Informationen ist betriebssystemspezifisch und darf nicht von einem Band-Miniklassentreiber interpretiert werden.
[in] Argument2
Zeiger auf die zweite Treiberkontextstruktur, die an die DriverEntry-Routine des Band-Miniklassentreibers übergeben wurde. Das Format der Informationen ist betriebssystemspezifisch und darf nicht von einem Band-Miniklassentreiber interpretiert werden.
[in] TapeInitData
Zeiger auf eine TAPE_INIT_DATA_EX Struktur, die treiberspezifische Informationen enthält, z. B. die Einstiegspunkte für die Befehlsverarbeitungsroutinen des Bandminiklassentreibers.
Rückgabewert
TapeClassInitialize gibt einen Wert zurück, der den Erfolg oder Fehler der Treiberinitialisierung angibt. Der Band-Miniklassentreiber übergibt diesen Wert uninterpretiert als Rückgabewert aus seiner DriverEntry-Routine .
Hinweise
Ein Band-Miniklassentreiber ruft TapeClassInitialize aus seiner DriverEntry-Routine auf und übergibt treiberspezifische Informationen in TapeInitData. TapeClassInitialize führt einen großen Teil der Treiberinitialisierung im Namen des Miniklassentreibers durch und isoliert den Miniklassentreiber von betriebssystemspezifischen Details.
TapeClassInitialize ruft den Band-Miniklassentreiber für treiberspezifische Aktivitäten auf, die während der Initialisierung erforderlich sind. Beispielsweise ruft TapeClassInitialize die TapeMiniVerifyInquiry-Routine des BandminiVerifyInquiry-Treibers auf, um zu bestimmen, ob der Treiber ein bestimmtes Bandgerät unterstützt. TapeClassInitialize ruft auch die TapeMiniExtensionInit-Routine des TapeMiniExtensionInit-Treibers auf, um die Minibanderweiterung zu initialisieren, wenn der Miniklassentreiber eine angefordert hat.
Ein Band-Miniklassentreiber ordnet eine TAPE_INIT_DATA_EX-Struktur auf dem Stapel zu, löscht sie mit TapeClassZeroMemory, füllt alle entsprechenden Member aus und übergibt sie an TapeClassInitialize.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Desktop |
Kopfzeile | minitape.h (schließen Sie Minitape.h ein) |
Bibliothek | Tape.lib |