다음을 통해 공유


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

테이프 미니클래스 드라이버의 TapeMiniVerifyInquiry 루틴의 진입점을 지정하여 드라이버가 지정된 디바이스를 지원하는지 여부를 결정합니다. 이 루틴은 필수입니다.

QueryModeCapabilitiesPage

TRUE일 때 테이프 클래스 드라이버를 테이프 미니클래스 드라이버의 TapeMiniVerifyInquiryTapeMiniExtensionInit 루틴에 전달하도록 모드 기능 페이지를 전달합니다.

MinitapeExtensionSize

드라이버별 컨텍스트 영역의 크기(바이트)를 지정합니다. 이 멤버가 0이 아닌 경우 ExtensionInitNULL이 아니어야 합니다. 이 값은 선택 사항이며 사용하지 않는 경우 0으로 설정해야 합니다.

ExtensionInit

선택적 미니 테이프 확장(있는 경우)을 초기화하는 테이프 미니클래스 드라이버의 TapeMiniExtensionInit 루틴에 대한 포인터입니다. MiniTapeExtensionSize가 0이면 ExtensionInitNULL이어야 합니다.

DefaultTimeOutValue

테이프 클래스 드라이버가 SRB 요청을 취소하기 전에 대기하는 시간(초)을 지정합니다. 이 값이 0이면 테이프 클래스 드라이버가 적절한 기본값을 설정합니다. 테이프 클래스 드라이버는 항상 읽기 및 쓰기 요청에 기본 제한 시간 값을 사용합니다. TAPE_INIT_DATA_EX 구조에 포함된 루틴은 SRB에서 TimeOutValue 를 설정하여 디바이스 제어 요청에 대한 기본 제한 시간 값을 재정의할 수 있습니다.

TapeError

테이프 클래스 드라이버의 오류 처리 작업을 보강하는 테이프 미니클래스 드라이버의 TapeMiniTapeError 루틴에 대한 포인터입니다. 이 루틴은 선택 사항입니다. 이 값을 사용하지 않으면 TapeErrorNULL로 설정해야 합니다.

CommandExtensionSize

각 테이프 명령이 시작되기 전에 할당할 명령 확장의 크기(바이트)를 지정합니다. 테이프 미니클래스 드라이버는 명령 확장을 사용하여 테이프 명령을 처리하는 동안 컨텍스트를 저장합니다. 해당 크기와 내부 구조는 테이프 미니클래스 드라이버에 의해 정의됩니다. 명령 확장은 선택 사항입니다. 하나를 사용하지 않는 경우 CommandExtensionSize 를 0으로 설정해야 합니다.

CreatePartition

테이프에 파티션을 만드는 테이프 미니클래스 드라이버의 TapeMiniCreatePartition 루틴에 대한 포인터입니다. 이 루틴은 필수입니다.

Erase

테이프를 지우는 테이프 미니클래스 드라이버의 TapeMiniErase 루틴에 대한 포인터입니다. 이 루틴은 필수입니다.

GetDriveParameters

드라이브 매개 변수 가져오기 요청을 처리하는 테이프 미니클래스 드라이버의 TapeMiniGetDriveParameters 루틴에 대한 포인터입니다. 이 루틴은 필수입니다.

GetMediaParameters

미디어 매개 변수를 가져오기 위한 요청을 처리하는 테이프 미니클래스 드라이버의 TapeMiniGetMediaParameters 루틴에 대한 포인터입니다. 이 루틴은 필수입니다.

GetPosition

테이프의 위치를 가져오기 위한 요청을 처리하는 테이프 미니클래스 드라이버의 TapeMiniGetPosition 루틴에 대한 포인터입니다. 이 루틴은 필수입니다.

GetStatus

상태 요청을 처리하는 테이프 미니클래스 드라이버의 TapeMiniGetStatus 루틴에 대한 포인터입니다. 이 루틴은 필수입니다.

Prepare

테이프 디바이스를 준비하는 테이프 미니클래스 드라이버의 TapeMiniPrepare 루틴에 대한 포인터입니다. 이 루틴은 필수입니다.

SetDriveParameters

드라이브 매개 변수를 설정하는 테이프 미니클래스 드라이버의 TapeMiniSetDriveParameters 루틴에 대한 포인터입니다. 이 루틴은 필수입니다.

SetMediaParameters

미디어 매개 변수를 설정하는 테이프 미니클래스 드라이버의 TapeMiniSetMediaParameters 루틴에 대한 포인터입니다. 이 루틴은 필수입니다.

SetPosition

테이프를 배치하는 테이프 미니클래스 드라이버의 TapeMiniSetPosition 루틴에 대한 포인터입니다. 이 루틴은 필수입니다.

WriteMarks

테이프에 표시를 쓰는 테이프 미니클래스 드라이버의 TapeMiniWriteMarks 루틴에 대한 포인터입니다. 이 루틴은 필수입니다.

PreProcessReadWrite

모든 읽기 및 쓰기 전에 디바이스별 작업을 실행하는 테이프 미니클래스 드라이버의 TapeMiniPreProcessReadWrite 루틴에 대한 포인터입니다. 이 루틴은 선택 사항이며 대부분의 드라이버에서 필요하지 않습니다. 사용되지 않는 경우 PreProcessReadWriteNULL이어야 합니다.

TapeGetMediaTypes

테이프 디바이스에서 지원하는 각 미디어 유형에 대한 설명을 가져오는 테이프 미니클래스 드라이버의 TapeMiniGetMediaTypes 루틴에 대한 포인터입니다. 이 루틴은 필수입니다.

MediaTypesSupported

디바이스에서 지원하는 미디어 형식의 수를 나타냅니다.

TapeWMIOperations

TapeMiniWMIControl 루틴에 대한 포인터입니다.

Reserved[2]

예약되어 있습니다.

설명

테이프 미니클래스 드라이버의 DriverEntry 루틴은 TapeClassZeroMemory 를 호출하여 TAPE_INIT_DATA_EX 지우고, 필요한 멤버와 적절한 선택적 멤버를 채우고, TapeClassInitialize 를 이 구조체에 대한 포인터로 채웁니다.

이 구조체의 멤버 설명에 표시된 테이프 미니클래스 드라이버 루틴의 이름은 자리 표시자 이름일 뿐입니다. 이러한 루틴에 대한 프로토타입은 newtape.h 에서 TAPE_PROCESS_COMMAND_ROUTINE 선언됩니다.

이 프로토타입 매개 변수의 의미는 각 미니클래스 드라이버 루틴에 따라 다릅니다. 이러한 매개 변수를 사용하는 방법에 대한 자세한 내용은 각 개별 미니클래스 드라이버 루틴에 대한 설명을 참조하세요.

요구 사항

요구 사항
헤더 minitape.h(Minitape.h 포함)

추가 정보

<a href="DriverEntry of Tape Miniclass Driver

TapeClassInitialize

TapeClassZeroMemory

TapeMiniCreatePartition

TapeMiniErase

TapeMiniExtensionInit

TapeMiniGetDriveParameters

TapeMiniGetMediaParameters

TapeMiniGetMediaTypes

TapeMiniGetPosition

TapeMiniGetStatus

TapeMiniPrepare

TapeMiniSetDriveParameters

TapeMiniSetMediaParameters

TapeMiniSetPosition

TapeMiniTapeError

TapeMiniVerifyInquiry

TapeMiniWriteMarks