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


Функция WdfDeviceAssignMofResourceName (wdfdevice.h)

[Относится только к KMDF]

Метод WdfDeviceAssignMofResourceName регистрирует имя ресурса MOF для указанного устройства.

Синтаксис

NTSTATUS WdfDeviceAssignMofResourceName(
  [in] WDFDEVICE        Device,
  [in] PCUNICODE_STRING MofResourceName
);

Параметры

[in] Device

Дескриптор объекта устройства платформы.

[in] MofResourceName

Указатель на структуру UNICODE_STRING , указывающую имя ресурса MOF.

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

Если операция выполнена успешно, WdfDeviceAssignMofResourceName возвращает STATUS_SUCCESS. К дополнительным возвращаемым значениям относятся:

Код возврата Описание
STATUS_INVALID_DEVICE_REQUEST
Драйвер уже вызвал WdfDeviceAssignMofResourceName.
STATUS_INSUFFICIENT_RESOURCES
Недостаточно памяти.
 

Метод может возвращать другие значения NTSTATUS.

Ошибка проверка возникает, если драйвер предоставляет недопустимый дескриптор объекта.

Комментарии

Драйвер, предоставляющий MOF-файл для поддержки WMI, должен вызывать WdfDeviceAssignMofResourceName, как правило, из функции обратного вызова EvtDriverDeviceAdd или EvtDevicePrepareHardware . Имя ресурса MOF — это имя файла, которое драйвер указывает в инструкции MofResource в файле скрипта ресурса (RC). Дополнительные сведения об указании имени ресурса MOF см. в разделе Компиляция MOF-файла драйвера.

Драйвер, перечисляющий устройства в шине , может вызывать WdfDeviceAssignMofResourceName для родительского устройства, а платформа будет использовать имя родительского ресурса MOF для дочерних устройств.

Дополнительные сведения о WMI см. в разделе Поддержка WMI в драйверах Framework-Based.

Примеры

В следующем примере кода объявляется строка Юникода, представляющая имя ресурса MOF, а затем регистрируется имя.

NTSTATUS  status;
DECLARE_CONST_UNICODE_STRING(mofRsrcName, MOFRESOURCENAME);

status = WdfDeviceAssignMofResourceName(
                                        Device,
                                        &mofRsrcName
                                        );
if (!NT_SUCCESS(status)) {
    return status;
}

Требования

Требование Значение
Целевая платформа Универсальное
Минимальная версия KMDF 1,0
Верхняя часть wdfdevice.h (включая Wdf.h)
Библиотека Wdf01000.sys (см. раздел Управление версиями библиотеки Платформы).
IRQL PASSIVE_LEVEL
Правила соответствия DDI DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)