Функция 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 (include Wdf.h) |
библиотеки | Wdf01000.sys (см. управление версиями библиотеки Платформы).) |
IRQL | PASSIVE_LEVEL |
правил соответствия DDI | DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf) |