Функция 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. К дополнительным возвращаемым значениям относятся:
Код возврата | Описание |
---|---|
|
Драйвер уже вызвал WdfDeviceAssignMofResourceName. |
|
Недостаточно памяти. |
Метод может возвращать другие значения 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) |