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


Регистрация сведений об оборудовании

Чтобы отобразить полезную информацию для пользователя и получить помощь в отладке, драйвер мини-порта дисплея должен задать определенные сведения об оборудовании в реестре. Драйвер мини-порта дисплея должен задать тип микросхемы, тип цифрового аналогового преобразователя (DAC), размер памяти (адаптера) и строку для идентификации адаптера. Эти сведения отображаются приложением Display в панель управления. Как правило, драйвер задает эти сведения в своей функции DxgkDdiAddDevice .

Чтобы задать эти сведения, драйвер:

  1. Вызывает функцию IoOpenDeviceRegistryKey , чтобы открыть и получить дескриптор программного ключа для хранения сведений о драйвере. В этом вызове драйвер задает флаг PLUGPLAY_REGKEY_DRIVER в параметре DevInstKeyType и значение KEY_SET_VALUE, KEY_WRITE или KEY_ALL_ACCESS в параметре DesiredAccess .

  2. Несколько раз вызывает функцию ZwSetValueKey , чтобы задать сведения о каждом типе оборудования. В каждом вызове драйвер указывает в параметре KeyHandle дескриптор программного ключа, полученный из IoOpenDeviceRegistryKey.

    В следующей таблице описаны сведения, которые должен зарегистрировать драйвер, а также приведены сведения о параметрах ValueName и Dataдля ZwSetValueKey.

    Сведения для записи Параметр ValueName Параметр data

    Тип микросхемы

    HardwareInformation.ChipType

    Строка, завершающаяся null, содержащая имя микросхемы

    Тип приложения уровня данных

    HardwareInformation.DacType

    Строка, завершающаяся значением NULL, содержащая имя или идентификатор приложения уровня данных

    Размер памяти

    HardwareInformation.MemorySize

    ULONG, содержащий (в мегабайтах) объем видеопамять на адаптере.

    Идентификатор адаптера

    HardwareInformation.AdapterString

    Строка, завершающаяся null, содержащая имя адаптера

    BIOS

    HardwareInformation.BiosString

    Строка, завершающаяся null, содержащая сведения о BIOS