TapeClassInitialize 함수(minitape.h)
TapeClassInitialize 루틴은 미니클래스 드라이버를 대신하여 대부분의 드라이버 및 디바이스 초기화를 수행합니다. TapeClassInitialize 는 테이프 I/O 요청에 대한 테이프 클래스 드라이버 진입점을 미니클래스 드라이버 데이터 구조로 로드하고, 미니클래스 드라이버가 지원하는 클레임되지 않은 테이프 디바이스를 찾아서 클레임하고, 미니클래스 드라이버 및 해당 디바이스에 대한 운영 체제 리소스를 할당하고 초기화합니다. TapeClassInitialize 는 TapeInitData 에 제공된 미니클래스 드라이버 관련 정보를 사용하고 드라이버별 작업을 위해 테이프 미니클래스 드라이버로 다시 호출합니다.
구문
SCSIPORT_API ULONG TapeClassInitialize(
[in] PVOID Argument1,
[in] PVOID Argument2,
[in] PTAPE_INIT_DATA_EX TapeInitData
);
매개 변수
[in] Argument1
테이프 미니클래스 드라이버의 DriverEntry 루틴에 전달된 드라이버 컨텍스트 정보에 대한 포인터입니다. 정보의 형식은 운영 체제별로 지정되며 테이프 미니클래스 드라이버에서 해석해서는 안 됩니다.
[in] Argument2
테이프 미니클래스 드라이버의 DriverEntry 루틴에 전달된 두 번째 드라이버 컨텍스트 구조에 대한 포인터입니다. 정보의 형식은 운영 체제별로 지정되며 테이프 미니클래스 드라이버에서 해석해서는 안 됩니다.
[in] TapeInitData
테이프 미니클래스 드라이버의 명령 처리 루틴에 대한 진입점과 같은 드라이버 관련 정보를 포함하는 TAPE_INIT_DATA_EX 구조체에 대한 포인터입니다.
반환 값
TapeClassInitialize 는 드라이버 초기화의 성공 또는 실패를 나타내는 값을 반환합니다. 테이프 미니클래스 드라이버는 이 값을 DriverEntry 루틴의 반환 값으로 전달합니다.
설명
테이프 미니클래스 드라이버는 DriverEntry 루틴에서 TapeClassInitialize를 호출하고 TapeInitData에서 드라이버 관련 정보를 전달합니다. TapeClassInitialize 는 미니클래스 드라이버를 대신하여 드라이버 초기화의 상당 부분을 수행하고 미니클래스 드라이버를 운영 체제별 세부 정보로부터 격리합니다.
TapeClassInitialize 는 초기화 중에 필요한 드라이버별 작업을 위해 테이프 미니클래스 드라이버를 호출합니다. 예를 들어 TapeClassInitialize 는 테이프 미니클래스 드라이버의 TapeMiniVerifyInquiry 루틴을 호출하여 드라이버가 지정된 테이프 디바이스를 지원하는지 여부를 확인합니다. 또한 TapeClassInitialize 는 미니클래스 드라이버가 요청한 경우 테이프 미니클래스 드라이버의 TapeMiniExtensionInit 루틴을 호출하여 미니 테이프 확장을 초기화합니다.
테이프 미니클래스 드라이버는 스택에 TAPE_INIT_DATA_EX 구조를 할당하고, TapeClassZeroMemory로 지우고, 모든 적절한 멤버를 채우고, TapeClassInitialize에 전달합니다.
요구 사항
요구 사항 | 값 |
---|---|
대상 플랫폼 | 데스크톱 |
머리글 | minitape.h(Minitape.h 포함) |
라이브러리 | Tape.lib |