KsDeviceSetBusData 함수(ks.h)
KsDeviceSetBusData 함수는 지정된 AVStream 디바이스가 있는 버스에 데이터를 씁니다.
구문
KSDDKAPI ULONG KsDeviceSetBusData(
[in] PKSDEVICE Device,
[in] ULONG DataType,
[in] PVOID Buffer,
[in] ULONG Offset,
[in] ULONG Length
);
매개 변수
[in] Device
KSDEVICE 구조체에 대한 포인터입니다. 이 루틴은 이 디바이스가 있는 버스에 데이터를 쓰려고 시도합니다.
[in] DataType
이 매개 변수는 쓸 버스 데이터의 형식을 나타냅니다. 0은 구성 공간에 해당합니다. 자세한 내용은 IRP_MN_READ_CONFIG 대한 참조 페이지에서 WhichSpace에 대한 설명을 참조하세요.
[in] Buffer
버스에 쓸 데이터를 포함하는 버퍼에 대한 포인터입니다. 버퍼의 바이트 수는 길이보다 크거나 같아야 합니다.
[in] Offset
이 매개 변수에는 데이터가 기록되는 DataType 에서 지정한 공간에 대한 바이트 오프셋이 포함됩니다.
[in] Length
이 매개 변수는 Buffer에서 버스에 쓸 데이터 바이트 수를 지정합니다 .
반환 값
KsDeviceSetBusData 는 버스에 실제로 기록된 바이트 수를 반환합니다. 오류의 경우 루틴은 0을 반환합니다. 설명 섹션에서 아래 세부 정보를 참조하세요.
설명
이 함수는 지정된 디바이스가 있는 버스의 드라이버에 따라 다르게 수행됩니다. 버스 드라이버가 버스 인터페이스 표준(일반적으로 PCI)을 지원하는 경우 IRQL = PASSIVE_LEVEL 또는 DISPATCH_LEVEL 이 함수를 호출합니다. 이러한 호출 후 KsDeviceSetBusData 는 요청된 공간에 기록된 실제 바이트 수를 반환합니다.
버스 드라이버가 버스 인터페이스 표준을 지원하지 않는 경우 AVStream은 IoCallDriver를 사용하여 버스 드라이버와 통신합니다. 이 경우 IRQL = PASSIVE_LEVEL KsDeviceSetBusData 를 호출합니다. 반환 값은 오류가 발생한 경우 0이거나 데이터가 성공적으로 작성된 경우 Length 와 같습니다.
Windows 2000 이상에서 실행되는 드라이버는 IRQL = DISPATCH_LEVEL 이 호출을 수행할 수 있습니다. 그러나 호환성을 보장하기 위해 미니 드라이버 작성기는 KsDeviceSetBusData 의 사용을 IRQL = PASSIVE_LEVEL 제한할 수 있습니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Microsoft Windows XP 이상 운영 체제 및 DirectX 8.0 이상 DirectX 버전에서 사용할 수 있습니다. |
대상 플랫폼 | 유니버설 |
헤더 | ks.h(Ks.h 포함) |
라이브러리 | Ks.lib |
IRQL | 설명 섹션을 참조하십시오. |