Поделиться через


Функция NtGdiDdCreateSurfaceObject

[Эта функция может изменяться с каждой редакцией операционной системы. Вместо этого используйте Microsoft DirectDraw и Microsoft Direct3DAPIs; эти API изолируют приложения от таких изменений операционной системы и скрывают многие другие трудности, связанные с взаимодействием непосредственно с драйверами дисплея.]

Создает объект surface в режиме ядра, представляющий объект surface в пользовательском режиме, на который ссылается 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]

Указатель на структуру DD_SURFACE_LOCAL , представляющую объект поверхности в пользовательском режиме DirectDraw, с которым необходимо связать выделенную память. Дополнительные сведения см. в документации по DDK.

puSurfaceMore [in]

Указатель на структуру DD_SURFACE_MORE , которая содержит дополнительные локальные данные для каждого отдельного объекта поверхности. Дополнительные сведения см. в документации по DDK.

puSurfaceGlobal [in]

Указатель на структуру DD_SURFACE_GLOBAL , содержащую данные поверхности, совместно используемые глобально с несколькими поверхностями. Дополнительные сведения см. в документации по DDK.

bComplete [in]

Флаг завершения объекта в режиме ядра. Может быть одним из следующих значений.

(TRUE)

Завершите всю обработку, касающуюся представления в режиме ядра.

(FALSE)

Создайте объект , но не настраивайте внутренние данные, такие как указатель памяти. Объекты, созданные с помощью FALSE, можно присоединять с помощью NtGdiDdAttachSurface и завершать их вызовом NtGdiDdCreateSurface.

Возвращаемое значение

В случае успешного выполнения эта функция возвращает дескриптор в представление поверхности режима ядра; в противном случае возвращается ЗНАЧЕНИЕ NULL.

Комментарии

Приложениям рекомендуется использовать API DirectDraw и Direct3D для создания объектов графических устройств и управления ими. Эти конструкции абстрагируют процесс создания устройства упрощенным и независимым от операционной системы способом.

Требования

Требование Значение
Минимальная версия клиента
Windows 2000 Professional [только классические приложения]
Минимальная версия сервера
Windows 2000 Server [только классические приложения]
Заголовок
Ntgdi.h

См. также раздел

Поддержка клиентов нижнего уровня графики

DdCreateSurfaceObject

NtGdiDdDeleteSurfaceObject

NtGdiDdAttachSurface

NtGdiDdCreateSurface