다음을 통해 공유


DXGKDDI_SETPOINTERPOSITION 콜백 함수(d3dkmddi.h)

DxgkDdiSetPointerPosition 함수는 마우스 포인터의 위치 및 표시 상태를 설정합니다.

구문

DXGKDDI_SETPOINTERPOSITION DxgkddiSetpointerposition;

NTSTATUS DxgkddiSetpointerposition(
  [in] IN_CONST_HANDLE hAdapter,
  [in] IN_CONST_PDXGKARG_SETPOINTERPOSITION pSetPointerPosition
)
{...}

매개 변수

[in] hAdapter

디스플레이 어댑터와 연결된 컨텍스트 블록에 대한 핸들입니다. 디스플레이 미니포트 드라이버는 이전에 DxgkDdiAddDevice 함수의 MiniportDeviceContext 출력 매개 변수에서 Microsoft DirectX 그래픽 커널 하위 시스템에 이 핸들을 제공했습니다.

[in] pSetPointerPosition

마우스 포인터를 표시하는 위치와 방법을 설명하는 DXGKARG_SETPOINTERPOSITION 구조체에 대한 포인터입니다.

반환 값

DxgkDdiSetPointerPosition 은 성공하면 STATUS_SUCCESS 반환합니다. 그렇지 않으면 Ntstatus.h에 정의된 오류 코드 중 하나를 반환합니다.

설명

DirectX 그래픽 커널 하위 시스템은 디스플레이 미니포트 드라이버의 DxgkDdiSetPointerPosition 함수를 호출하여 마우스 포인터의 위치를 설정합니다. DxgkDdiSetPointerPosition 함수는 다른 모든 디스플레이 미니포트 드라이버 함수와 독립적으로 호출됩니다. 따라서 DxgkDdiSetPointerPosition 스레드는 다른 디스플레이 미니포트 드라이버 스레드와 동시에 실행할 수 있습니다. 그러나 시스템은 DxgkDdiSetPointerPositionDxgkDdiSetPointerShape 스레드를 동시에 실행할 수 없도록 합니다.

DxgkDdiSetPointerPosition 스레드를 다른 디스플레이 미니포트 드라이버 스레드와 동시에 실행하는 경우 디스플레이 미니포트 드라이버는 DMA(직접 메모리 액세스)를 통해 명령 버퍼를 그래픽 하드웨어로 보내는 작업, 메모리 매핑 I/O(MMIO)를 사용하여 그래픽 하드웨어를 프로그래밍하는 작업과 같은 다른 작업과 독립적으로 마우스 포인터 하드웨어를 프로그래밍할 수 있어야 합니다. 등등.

pSetPointerPosition 매개 변수가 가리키는 DXGKARG_SETPOINTERPOSITION 구조체의 VidPnSourceId 멤버와 연결된 비디오 VidPN(네트워크) 토폴로지를 사용하지 않도록 설정한 경우에도 DxgkDdiSetPointerPosition을 호출할 수 있습니다. 이 경우 드라이버는 STATUS_SUCCESS 반환해야 하지만 드라이버 또는 하드웨어의 상태를 변경하지 않아야 합니다.

DxgkDdiSetPointerPosition 을 페이징 가능으로 만들어야 합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista
대상 플랫폼 데스크톱
머리글 d3dkmddi.h(D3dkmddi.h 포함)
IRQL PASSIVE_LEVEL

추가 정보

DXGKARG_SETPOINTERPOSITION

DxgkDdiAddDevice

DxgkDdiSetPointerShape