PFNKSDEVICEPNPSTART 콜백 함수(ks.h)
지정된 디바이스에 대한 IRP_MN_START_DEVICE 요청을 보낼 때 AVStream 미니드라이버의 AVStrMiniDeviceStart 루틴이 호출됩니다.
구문
PFNKSDEVICEPNPSTART Pfnksdevicepnpstart;
NTSTATUS Pfnksdevicepnpstart(
[in] PKSDEVICE Device,
[in] PIRP Irp,
[in, optional] PCM_RESOURCE_LIST TranslatedResourceList,
[in, optional] PCM_RESOURCE_LIST UntranslatedResourceList
)
{...}
매개 변수
[in] Device
시작할 디바이스를 설명하는 KSDEVICE 구조체에 대한 포인터입니다.
[in] Irp
받은 IRP_MN_START_DEVICE 대한 포인터입니다.
[in, optional] TranslatedResourceList
Irp에서 추출된 변환된 리소스 목록을 포함하는 CM_RESOURCE_LIST 구조체에 대한 포인터입니다. 디바이스에 할당된 리소스가 없는 경우 NULL과 같습니다. 선택 사항입니다.
[in, optional] UntranslatedResourceList
Irp에서 추출된 번역되지 않은 리소스 목록을 포함하는 CM_RESOURCE_LIST 구조체에 대한 포인터입니다. 이 매개 변수 목록의 KSDEVICE 멤버에 할당된 리소스가 없는 경우 NULL과 같습니다. 선택 사항입니다.
반환 값
작업을 수행하려는 시도에서 반환된 STATUS_SUCCESS 또는 오류 코드를 반환해야 합니다. 루틴이 성공적인 상태 코드를 반환하는 경우 시작이 성공하도록 보장됩니다. STATUS_PENDING 반환하지 마세요.
설명
KSDEVICE_DISPATCH 구조의시작 멤버에서 이 루틴의 주소를 지정합니다.
일반적으로 이 루틴은 할당된 리소스를 평가해야 하는 미니드라이버에서 사용됩니다. 리소스 목록은 미니드라이버의 편의를 위해 Irp 에서 추출됩니다. 미니 드라이버는 리소스 목록을 구문 분석하여 디바이스에 할당된 인터럽트 및 메모리 리소스의 실제 주소를 찾을 수 있습니다.
미니 드라이버는 이 루틴을 사용하여 AVStream 디바이스와 연결할 컨텍스트 정보를 할당할 수 있습니다. (이것은 컨텍스트 정보를 저장하기 위해 디바이스 확장을 사용하는 스트림 클래스의 미니드라이버와 비슷합니다.)
STATUS_PENDING 이 함수의 법적 반환 코드는 아닙니다. AVStream이 디바이스 인터페이스 사용과 같은 시작 작업을 완료하기 전에 작업자 스레드의 컨텍스트에서 작업을 수행하려면 사후 시작 디스패치를 사용합니다. AVStrMiniDevicePostStart를 참조하세요.
이 루틴은 선택 사항입니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Microsoft Windows XP 이상 운영 체제 및 DirectX 8.0 이상 DirectX 버전에서 사용할 수 있습니다. |
대상 플랫폼 | 데스크톱 |
머리글 | ks.h(Ks.h 포함) |