다음을 통해 공유


NtGdiDdCreateSurfaceObject 함수

[이 함수는 각 운영 체제 수정 버전에 따라 변경될 수 있습니다. 대신 Microsoft DirectDraw 및 Microsoft Direct3DAPIs를 사용합니다. 이러한 API는 이러한 운영 체제 변경으로부터 애플리케이션을 격리하고 디스플레이 드라이버와 직접 상호 작용하는 데 관련된 다른 많은 어려움을 숨깁니다.]

puSurfaceLocal에서 참조하는 사용자 모드 표면 개체를 나타내는 커널 모드 표면 개체를 만듭니다.

구문

HANDLE APIENTRY NtGdiDdCreateSurfaceObject(
  _In_ HANDLE             hDirectDrawLocal,
  _In_ HANDLE             hSurface,
  _In_ PDD_SURFACE_LOCAL  puSurfaceLocal,
  _In_ PDD_SURFACE_MORE   puSurfaceMore,
  _In_ PDD_SURFACE_GLOBAL puSurfaceGlobal,
  _In_ BOOL               bComplete
);

매개 변수

hDirectDrawLocal [in]

커널 모드 DirectDraw 개체에 대한 핸들입니다.

hSurface [in]

동일한 표면에 대한 이전 핸들입니다. 모드 전환 후 표면이 다시 만들어지는 경우에 사용됩니다.

puSurfaceLocal [in]

할당된 메모리를 연결할 DirectDraw 사용자 모드 표면 개체를 나타내는 DD_SURFACE_LOCAL 구조체에 대한 포인터입니다. 자세한 내용은 DDK 설명서를 참조하세요.

puSurfaceMore [in]

각 개별 표면 개체에 대한 추가 로컬 데이터를 포함하는 DD_SURFACE_MORE 구조체에 대한 포인터입니다. 자세한 내용은 DDK 설명서를 참조하세요.

puSurfaceGlobal [in]

여러 표면과 전역적으로 공유되는 표면 데이터를 포함하는 DD_SURFACE_GLOBAL 구조체에 대한 포인터입니다. 자세한 내용은 DDK 설명서를 참조하세요.

bComplete [in]

커널 모드 개체 완성 플래그입니다. 다음 값 중 하나일 수 있습니다.

(TRUE)

커널 모드 표현과 관련된 모든 처리를 완료합니다.

(FALSE)

개체를 만들지만 메모리 포인터와 같은 내부 데이터는 설정하지 않습니다. FALSE를 사용하여 만든 개체는 NtGdiDdAttachSurface를 사용하여 연결할 수 있으며 NtGdiDdCreateSurface 호출로 완료됩니다.

반환 값

성공하면 이 함수는 커널 모드 표면 표현에 대한 핸들을 반환합니다. 그렇지 않으면 NULL을 반환합니다.

설명

애플리케이션은 DirectDraw 및 Direct3D API를 사용하여 그래픽 디바이스 개체를 만들고 관리하는 것이 좋습니다. 이러한 구문은 간소화되고 운영 체제에 독립적인 방식으로 디바이스 만들기 프로세스를 추상화합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트
Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버
Windows 2000 Server[데스크톱 앱만]
헤더
Ntgdi.h

추가 정보

그래픽 하위 수준 클라이언트 지원

DdCreateSurfaceObject

NtGdiDdDeleteSurfaceObject

NtGdiDdAttachSurface

NtGdiDdCreateSurface