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


Функция D3DKMTEnumAdapters2 (d3dkmthk.h)

Функция D3DKMTEnumAdapters2 предоставляет сведения о перечислении всех графических и отображаемых адаптеров в системе.

Синтаксис

NTSTATUS D3DKMTEnumAdapters2(
  const D3DKMT_ENUMADAPTERS2 *unnamedParam1
);

Параметры

unnamedParam1

[in, out] Указатель на D3DKMT_ENUMADAPTERS2 структуру, в которой предоставляются сведения об адаптерах в системе. См. примечания.

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

D3DKMTEnumAdapters2 возвращает STATUS_SUCCESS при успешном выполнении или ошибке, например одной из следующих.

Код возврата Описание
STATUS_BUFFER_TOO_SMALL Предоставленный массив слишком мал, чтобы получить все адаптеры.
STATUS_INVALID_PARAMETER pAdapters имеет значение NULL или является недопустимым регионом памяти.
STATUS_NO_MEMORY Память не может быть выделена для удовлетворения операции.

Замечания

При входе NumAdapters указывает, сколько адаптеров можно возвращать в пустом массиве, на который точки pAdapters. Если D3DKMT_ENUMADAPTERS2 возвращает STATUS_SUCCESS:

  • Если pAdapters не имеет значения NULL, NumAdapters будет содержать количество адаптеров, возвращенных в массиве pAdapters.
  • Если pAdapters имеет значение NULL, NumAdapters будет содержать максимальное поддерживаемое число адаптеров.

Если D3DKMT_ENUMADAPTERS2 возвращает ошибку, NumAdapters не определена.

D3DKMTEnumAdapters2 обычно вызывается дважды:

  • Для первого вызова задайте pAdapters значение NULL. D3DKMTEnumAdapters2 будет записывать максимальное число поддерживаемых адаптеров в NumAdapters.

  • Для второго вызова задайте NumAdapters значение, возвращаемое в первом вызове, и задайте pAdapters, чтобы указать массив D3DKMT_ENUMADAPTERS2 структур NumAdapters. D3DKMTEnumAdapters2 заполняет массив и передает число структур массива (адаптеров), заполненных им.

После того как вызывающий объект D3DKMTEnumAdapters2 успешно получил перечисление адаптеров, это ответственность вызывающего объекта для управления сроком существования адаптера D3DKMT_HANDLEs. Эти дескрипторы возвращаются через pAdapters, и они должны быть закрыты с D3DKMTCloseAdapter.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows 8
минимальный поддерживаемый сервер Windows Server 2012
целевая платформа Виндоус
заголовка d3dkmthk.h (include D3dkmthk.h)
библиотеки Gdi32.lib
DLL Gdi32.dll

См. также

D3DKMT_ENUMADAPTERS2

PFND3DKMT_ENUMADAPTERS2

D3DKMTCloseAdapter