KsCreateDevice 함수(ks.h)
KsCreateDevice 함수는 AVStream 디바이스를 만듭니다.
구문
KSDDKAPI NTSTATUS KsCreateDevice(
[in] PDRIVER_OBJECT DriverObject,
[in] PDEVICE_OBJECT PhysicalDeviceObject,
[in, optional] const KSDEVICE_DESCRIPTOR *Descriptor,
[in] ULONG ExtensionSize,
[out, optional] PKSDEVICE *Device
);
매개 변수
[in] DriverObject
미니 드라이버의 WDM 드라이버 개체에 대한 포인터입니다.
[in] PhysicalDeviceObject
AVStream에서 만들려는 디바이스의 WDM 물리적 디바이스 개체에 대한 포인터입니다.
[in, optional] Descriptor
생성되는 디바이스의 특성을 설명하는 디바이스 설명자에 대한 포인터입니다. 호출자가 이 선택적 매개 변수를 지정하지 않으면 AVStream은 기본 특성과 연결된 필터 팩터리를 사용하지 않는 디바이스를 만듭니다.
[in] ExtensionSize
이 매개 변수에는 디바이스 확장의 크기가 포함됩니다. 이 값이 0이면 기본 확장 크기가 사용됩니다. 그렇지 않은 경우 적어도 sizeof(KSDEVICE_HEADER)여야 합니다.
[out, optional] Device
생성된 KSDEVICE 구조체의 주소를 포함하는 메모리 위치에 대한 포인터입니다. 선택 사항입니다.
반환 값
디바이스가 성공적으로 만들어지면 STATUS_SUCCESS 반환합니다. 그렇지 않으면 적절한 오류 코드를 반환합니다.
설명
일반적으로 미니 드라이버는 이 함수를 직접 호출하지 않습니다. 대신 KsCreateDevice 는 기본 AddDevice 처리기 인 KsAddDevice에 의해 호출됩니다. KsAddDevice는 KsCreateDevice에 대한 내부 호출을 하기 때문에 KsCreateDevice를 호출하는 드라이버는 KsAddDevice를 별도로 호출해서는 안 됩니다.
KsCreateDevice를 직접 호출하는 미니드라이버에서 KsInitializeDriver를 사용하면 안 됩니다. 미니드라이버가 KsInitializeDriver를 호출하지 않는 경우 대신 자체 AddDevice 콜백을 제공해야 합니다. 그런 다음 미니 드라이버는 해당 AddDevice 콜백에서 KsCreateDevice를 호출할 수 있습니다.
KSDEVICE_DESCRIPTOR 제공되지 않으면 AVStream은 기본 특성과 연결된 필터 팩터리를 사용하지 않는 디바이스를 만듭니다. KSDEVICE_DESCRIPTOR 제공되고 create dispatch가 있는 KSDEVICE_DISPATCH 테이블이 포함된 경우 create dispatch가 호출됩니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Microsoft Windows XP 이상 운영 체제 및 DirectX 8.0 이상 DirectX 버전에서 사용할 수 있습니다. |
대상 플랫폼 | 유니버설 |
헤더 | ks.h(Ks.h 포함) |
라이브러리 | Ks.lib |
IRQL | PASSIVE_LEVEL |