DXGKDDI_ADD_DEVICE 콜백 함수(dispmprt.h)
DxgkDdiAddDevice 함수는 디스플레이 어댑터에 대한 컨텍스트 블록을 만들고 디스플레이 어댑터를 나타내는 핸들을 반환합니다.
구문
DXGKDDI_ADD_DEVICE DxgkddiAddDevice;
NTSTATUS DxgkddiAddDevice(
[in] IN_CONST_PDEVICE_OBJECT PhysicalDeviceObject,
[out] OUT_PPVOID MiniportDeviceContext
)
{...}
매개 변수
[in] PhysicalDeviceObject
디스플레이 어댑터를 식별하는 PDO(물리적 디바이스 개체)에 대한 포인터입니다.
[out] MiniportDeviceContext
PhysicalDeviceObject 로 식별된 디스플레이 어댑터를 나타내는 디스플레이 미니포트 드라이버에서 만든 핸들을 받는 변수에 대한 포인터입니다. 디스플레이 미니포트 드라이버는 이 매개 변수에서 NULL을 반환하여 PhysicalDeviceObject 로 식별된 디스플레이 어댑터를 지원하지 않음을 나타낼 수 있습니다.
반환 값
DxgkDdiAddDevice 는 성공하면 STATUS_SUCCESS 반환합니다. 그렇지 않으면 Ntstatus.h 에 정의된 오류 코드 중 하나를 반환합니다.
설명
DxgkDdiAddDevice 함수는 PhysicalDeviceObject 로 식별된 디스플레이 어댑터와 연결된 프라이빗 컨텍스트 블록을 할당합니다. MiniportDeviceContext 에서 반환된 핸들은 디스플레이 어댑터에 대한 핸들 또는 디스플레이 어댑터와 연결된 컨텍스트 블록에 대한 핸들이라고 생각할 수 있습니다. DirectX 그래픽 커널 하위 시스템(Dxgkrnl.sys)은 디스플레이 미니포트 드라이버에 대한 후속 호출에서 핸들을 제공합니다. 다음 목록에서는 디스플레이 미니포트 드라이버에서 구현하는 함수에 핸들을 전달하는 Dxgkrnl.sys 다양한 구성 요소의 예를 제공합니다.
디스플레이 포트 드라이버는 DxgkDdiStartDevice 함수의 MiniportDeviceContext 매개 변수에 핸들을 제공합니다.
VidPN 관리자는 DxgkDdiIsSupportedVidPn 함수의 hAdapter 매개 변수에 핸들을 제공합니다.
DirectX 그래픽 코어는 DxgkDdiQueryAdapterInfo 함수의 hAdapter 매개 변수에 핸들을 제공합니다.
핸들의 이름이 MiniportDeviceContext 이고 경우에 따라 hAdapter 라는 사실에 혼동하지 마세요. 또한 이 핸들을 특정 디스플레이 미니포트 드라이버 함수에 전달되는 hDevice 매개 변수와 혼동하지 마세요.
DxgkDdiAddDevice 는 한 번에 하나의 디바이스에 대해 직렬로 호출됩니다. 이 동작은 WDM 커널 모드 드라이버에 대한 표준 DRIVER_ADD_DEVICE 콜백과 동일합니다.
일부 디스플레이 어댑터 카드에는 디스플레이 어댑터 역할을 하는 두 개 이상의 PCI 함수가 있습니다. 예를 들어 특정 이전 카드는 각 보기에 대해 별도의 PCI 함수를 사용하여 여러 보기를 구현합니다. 디스플레이 포트 드라이버는 각 PCI 함수에 대해 DxgkDdiAddDevice 를 한 번 호출합니다. 이때 디스플레이 미니포트 드라이버는 PCI 함수를 지원함을 나타낼 수 있습니다( MiniportDeviceContext를 0이 아닌 값으로 설정)하거나 PCI 함수를 지원하지 않음( MiniportDeviceContext 를 NULL로 설정). 특정 PCI 함수에 대한 정보를 가져오기 위해 디스플레이 미니포트 드라이버는 PhysicalDeviceObject 를 IoGetDeviceProperty에 전달할 수 있습니다.
DxgkDdiRemoveDevice에서 컨텍스트 블록 및 DxgkDdiAddDevice 중에 할당하는 다른 리소스를 해제합니다.
DxgkDdiAddDevice 함수를 페이징 가능으로 만들어야 합니다.
요구 사항
| 지원되는 최소 클라이언트 | Windows Vista |
| 대상 플랫폼 | 데스크톱 |
| 헤더 | dispmprt.h |
| IRQL | PASSIVE_LEVEL |
참고 항목
피드백
다음에 대한 사용자 의견 제출 및 보기