Partager via


structure TAPE_INIT_DATA_EX (minitape.h)

TAPE_INIT_DATA_EX définit des valeurs et des routines spécifiques à un pilote de mini-classe de bande Windows 2000. La routine DriverEntry de la mini-classe de bande transmet ces informations au pilote de classe de bande pour terminer l’initialisation du pilote de miniclasse.

Syntaxe

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;

Membres

InitDataSize

Taille de cette structure, en octets.

VerifyInquiry

Spécifie le point d’entrée de la routine TapeMiniVerifyInquiry du pilote de la mini-classe de bande, qui détermine si le pilote prend en charge un appareil donné. Cette routine est obligatoire.

QueryModeCapabilitiesPage

Indique au pilote de classe de bande quand TRUE passe une page de fonctionnalités de mode aux routines TapeMiniVerifyInquiry et TapeMiniExtensionInit du pilote de bande miniclasse.

MinitapeExtensionSize

Spécifie la taille, en octets, d’une zone de contexte spécifique au pilote. Si ce membre n’est pas nul, ExtensionInit ne doit pas avoir la valeur NULL. Cette valeur est facultative et doit être définie sur zéro si elle n’est pas utilisée.

ExtensionInit

Pointeur vers la routine TapeMiniExtensionInit du pilote de la miniclasse de bande, qui initialise une extension de mini-bande facultative, le cas échéant. Si MiniTapeExtensionSize est égal à zéro, ExtensionInit doit avoir la valeur NULL.

DefaultTimeOutValue

Spécifie le nombre de secondes pendant lesquelles le pilote de classe de bande attend une requête SRB avant de l’annuler. Si cette valeur est égale à zéro, le pilote de classe de bande définit une valeur par défaut appropriée. Le pilote de classe de bande utilise toujours la valeur de délai d’attente par défaut pour les demandes de lecture et d’écriture. Les routines contenues dans la structure TAPE_INIT_DATA_EX peuvent remplacer la valeur de délai d’attente par défaut pour les demandes de contrôle d’appareil en définissant TimeOutValue dans un SRB.

TapeError

Pointeur vers la routine TapeMiniTapeError du pilote de la mini-classe de bande, qui augmente les activités de gestion des erreurs du pilote de classe de bande. Cette routine est facultative. Si elle n’est pas utilisée, TapeError doit avoir la valeur NULL.

CommandExtensionSize

Spécifie la taille, en octets, d’une extension de commande à allouer avant le début de chaque commande de bande. Un pilote de miniclasse de bande utilise l’extension de commande pour stocker le contexte pendant le traitement des commandes de bande. Sa taille et sa structure interne sont définies par le pilote de miniclasse bande. Une extension de commande est facultative. Si un n’est pas utilisé, CommandExtensionSize doit être défini sur zéro.

CreatePartition

Pointeur vers la routine TapeMiniCreatePartition du pilote de la miniclasse de bande, qui crée une partition sur une bande. Cette routine est obligatoire.

Erase

Pointeur vers la routine TapeMiniErase du pilote de la mini-classe de bande, qui efface une bande. Cette routine est obligatoire.

GetDriveParameters

Pointeur vers la routine TapeMiniGetDriveParameters du pilote de la mini-classe de bande, qui gère les demandes d’obtention des paramètres de lecteur. Cette routine est obligatoire.

GetMediaParameters

Pointeur vers la routine TapeMiniGetMediaParameters du pilote de miniclasse de bande, qui gère les demandes d’obtention des paramètres multimédias. Cette routine est obligatoire.

GetPosition

Pointeur vers la routine TapeMiniGetPosition du pilote de la mini-classe de bande, qui gère les demandes d’obtention de la position d’une bande. Cette routine est obligatoire.

GetStatus

Pointeur vers la routine TapeMiniGetStatus du pilote de la mini-classe de bande, qui gère les demandes de status. Cette routine est obligatoire.

Prepare

Pointeur vers la routine TapeMiniPrepare du pilote de miniclasse de bande, qui prépare un périphérique à bande. Cette routine est obligatoire.

SetDriveParameters

Pointeur vers la routine TapeMiniSetDriveParameters du pilote de miniclasse de bande, qui définit les paramètres du lecteur. Cette routine est obligatoire.

SetMediaParameters

Pointeur vers la routine TapeMiniSetMediaParameters du pilote de miniclasse de bande, qui définit les paramètres multimédias. Cette routine est obligatoire.

SetPosition

Pointeur vers la routine TapeMiniSetPosition du pilote de la mini-classe de bande, qui positionne une bande. Cette routine est obligatoire.

WriteMarks

Pointeur vers la routine TapeMiniWriteMarks du pilote de la mini-classe de bande, qui écrit des marques dans la bande. Cette routine est obligatoire.

PreProcessReadWrite

Pointeur vers la routine TapeMiniPreProcessReadWrite du pilote de la miniclasse de bande, qui exécute des opérations spécifiques à l’appareil avant toutes les lectures et écritures. Cette routine est facultative et n’est pas nécessaire pour la plupart des pilotes. Si elle n’est pas utilisée, PreProcessReadWrite doit avoir la valeur NULL.

TapeGetMediaTypes

Pointeur vers la routine TapeMiniGetMediaTypes du pilote de miniclasse de bande, qui obtient une description de chaque type de média pris en charge par un périphérique à bande. Cette routine est obligatoire.

MediaTypesSupported

Indique le nombre de types de médias pris en charge par l’appareil.

TapeWMIOperations

Pointeur vers la routine TapeMiniWMIControl .

Reserved[2]

Réservé.

Remarques

La routine DriverEntry d’un pilote de miniclasse sur bande appelle TapeClassZeroMemory pour effacer TAPE_INIT_DATA_EX, remplit les membres requis et tous les membres facultatifs appropriés, et TapeClassInitialize avec un pointeur vers cette structure.

Les noms des routines de pilotes de miniclasse de bande indiqués dans les descriptions des membres de cette structure ne sont que des noms d’espace réservé. Le prototype de ces routines est déclaré dans newtape.h comme TAPE_PROCESS_COMMAND_ROUTINE.

La signification des paramètres de ce prototype est différente pour chaque routine de pilote de miniclasse. Pour plus d’informations sur l’utilisation de ces paramètres, consultez les descriptions de chaque routine de pilote de miniclasse.

Configuration requise

Condition requise Valeur
En-tête minitape.h (inclure Minitape.h)

Voir aussi

<a href="DriverEntry of Tape Miniclass Driver

TapeClassInitialize

TapeClassZeroMemory

TapeMiniCreatePartition

TapeMiniErase

TapeMiniExtensionInit

TapeMiniGetDriveParameters

TapeMiniGetMediaParameters

TapeMiniGetMediaTypes

TapeMiniGetPosition

TapeMiniGetStatus

TapeMiniPrepare

TapeMiniSetDriveParameters

TapeMiniSetMediaParameters

TapeMiniSetPosition

TapeMiniTapeError

TapeMiniVerifyInquiry

TapeMiniWriteMarks