TAPE_INIT_DATA_EX結構 (minitape.h)
TAPE_INIT_DATA_EX會定義 Windows 2000 磁帶迷你類別驅動程式特有的值和例程。 磁帶迷你類別 DriverEntry 例程會將這項資訊傳遞給磁帶類別驅動程式,以完成迷你類別驅動程式初始化。
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;
InitDataSize
這個結構的大小,以位元組為單位。
VerifyInquiry
指定磁帶迷你類別驅動程式 TapeMiniVerifyIn 查詢 例程的進入點,以判斷驅動程式是否支援指定的裝置。 這是必要例程。
QueryModeCapabilitiesPage
當 TRUE 將模式功能頁面傳遞至磁帶迷你類別驅動程式的 TapeMiniVerifyInquiry,並 TapeMiniExtensionInit 例程時,指示磁帶類別驅動程式。
MinitapeExtensionSize
指定驅動程式特定內容區域的大小,以位元組為單位。 如果這個成員不是零,ExtensionInit 不得 NULL。 這個值是選擇性的,如果未使用,則必須設定為零。
ExtensionInit
磁帶迷你類別驅動程式的指標 TapeMiniExtensionInit 例程,如果有任何的話,它會初始化選擇性的 minitape 擴充功能。 如果 MiniTapeExtensionSize 為零,ExtensionInit 必須 NULL。
DefaultTimeOutValue
指定磁帶類別驅動程式在取消 SRB 要求之前等待 SRB 要求的秒數。 如果此值為零,磁帶類別驅動程式會設定適當的預設值。 磁帶類別驅動程式一律會使用預設逾時值來讀取和寫入要求。 TAPE_INIT_DATA_EX 結構中包含的例程可以藉由在 SRB 中設定 timeOutValue 來覆寫裝置控制要求的預設逾時值。
TapeError
磁帶迷你類別驅動程式 TapeMiniTapeError 例程的指標,可增強磁帶類別驅動程式的錯誤處理活動。 此例程是選擇性的。 如果未使用,TapeError 必須設定為 NULL。
CommandExtensionSize
指定要在每個磁帶命令開始之前配置之命令延伸模組的大小,以位元組為單位。 磁帶迷你類別驅動程式會使用命令擴充功能,在處理磁帶命令期間儲存內容。 其大小和內部結構是由磁帶迷你類別驅動程式所定義。 命令延伸模組是選擇性的。 如果未使用其中一個,CommandExtensionSize 必須設定為零。
CreatePartition
磁帶迷你類別驅動程式 TapeMiniCreatePartition 例程的指標,它會在磁帶上建立分割區。 這是必要例程。
Erase
磁帶迷你類別驅動程式 TapeMiniErase 例程的指標,這會清除磁帶。 這是必要例程。
GetDriveParameters
磁帶迷你類別驅動程式 TapeMiniGetDriveParameters 例程的指標,此例程會處理取得磁碟驅動器參數的要求。 這是必要例程。
GetMediaParameters
磁帶迷你類別驅動程式的指標 TapeMiniGetMediaParameters 例程,可處理取得媒體參數的要求。 這是必要例程。
GetPosition
磁帶迷你類別驅動程式 TapeMiniGetPosition 例程的指標,此例程會處理取得磁帶位置的要求。 這是必要例程。
GetStatus
磁帶迷你類別驅動程式 TapeMiniGetStatus 例程的指標,此例程會處理狀態的要求。 這是必要例程。
Prepare
磁帶迷你類別驅動程式 TapeMiniPrepare 例程的指標,該例程會準備磁帶裝置。 這是必要例程。
SetDriveParameters
磁帶迷你類別驅動程式 TapeMiniSetDriveParameters 例程的指標,這個例程會設定磁碟驅動器參數。 這是必要例程。
SetMediaParameters
磁帶迷你類別驅動程式 TapeMiniSetMediaParameters 例程的指標,可設定媒體參數。 這是必要例程。
SetPosition
磁帶迷你類別驅動程式 TapeMiniSetPosition 例程的指標,此例程會放置磁帶。 這是必要例程。
WriteMarks
磁帶迷你類別驅動程式 TapeMiniWriteMarks 例程的指標,它會將標記寫入磁帶。 這是必要例程。
PreProcessReadWrite
磁帶迷你類別驅動程式的指標 TapeMiniPreProcessReadWrite 例程,它會在所有讀取和寫入之前執行裝置特定作業。 此例程是選擇性的,大部分驅動程式都不需要此例程。 如果未使用,PreProcessReadWrite 必須 NULL。
TapeGetMediaTypes
磁帶迷你類別驅動程式 TapeMiniGetMediaTypes 例程的指標,它會取得磁帶裝置所支援之每個媒體類型的描述。 這是必要例程。
MediaTypesSupported
指出裝置支持的媒體類型數目。
TapeWMIOperations
TapeMiniWMIControl 例程的指標。
Reserved[2]
保留。
磁帶迷你類別驅動程式的 DriverEntry 例程呼叫 TapeClassZeroMemory 以清除TAPE_INIT_DATA_EX、填入所需的成員和任何適當的選擇性成員,以及 TapeClassInitialize 具有此結構的指標。
此結構的成員描述中指出的磁帶迷你類別驅動程式例程名稱只是佔位元名稱。 這些例程的原型會在 newtape.h 中宣告為 TAPE_PROCESS_COMMAND_ROUTINE。
此原型參數的意義對於每個迷你類別驅動程式例程而言都不同。 如需如何使用這些參數的詳細資訊,請參閱每個個別迷你類別驅動程式例程的描述。
要求 | 價值 |
---|---|
標頭 | minitape.h (包括 Minitape.h) |