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


Функция WdfPreDeviceInstall (wdfinstaller.h)

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

Функция WdfPreDeviceInstall совместного установщика выполняет любые операции, которые могут потребоваться совместному установщику, прежде чем установщик драйвера, не являющегося Plug and Play (PnP), создаст службу драйвера в режиме ядра.

Синтаксис

ULONG WdfPreDeviceInstall(
  [in]           LPCWSTR InfPath,
  [in, optional] LPCWSTR InfSectionName
);

Параметры

[in] InfPath

Указатель на строку расширенных символов, завершающуюся null, которая содержит путь к каталогу к INF-файлу драйвера. Установщик драйвера может получить эту строку, вызвав Метод GetCurrentDirectory, как описано в Microsoft Windows SDK.

[in, optional] InfSectionName

Указатель на строку расширенных символов, завершающуюся null, которая содержит имя Wdf-install-section в INF-файле драйвера. Дополнительные сведения об этом имени см. в разделе Использование совместного установщика KMDF. Если этот указатель имеет значение NULL, совместный установщик использует WdfSection для имени.

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

WdfPreDeviceInstall возвращает ERROR_SUCCESS , если операция выполнена успешно. В противном случае функция возвращает одно из дополнительных ERROR_XXX значений, определенных в Winerror.h.

Комментарии

Установщик для драйверов на основе платформы устройства, отличного от PnP, должен вызвать WdfPreDeviceInstall или WdfPreDeviceInstallEx , прежде чем установщик вызовет CreateService.

Чтобы получить адрес функции WdfPreDeviceInstall совместного установщика, установщик должен вызвать GetProcAddress после того, как установщик вызовет LoadLibrary для загрузки совместного установщика.

Если совместный установщик определяет, что компьютер необходимо перезагрузить, чтобы завершить установку драйвера (как правило, из-за того, что ранее была установлена более старая версия платформы), WdfPreDeviceInstall сообщает диспетчеру Plug and Play (PnP). Затем диспетчер PnP запрашивает у пользователя необходимость перезагрузки.

Дополнительные сведения о функции WdfPreDeviceInstall и установщиках для драйверов на основе платформы устройств, не относящихся к PnP, см. в статье Установка драйвера, отличного от PnP. Дополнительные сведения о CreateService, GetProcAddress и LoadLibrary см. в документации по Microsoft Windows SDK.

Примеры

Пример кода, в котором используется функция WdfPreDeviceInstall , см. в установщике примера NONPNP .

Требования

Требование Значение
Целевая платформа Универсальное
Минимальная версия KMDF 1,0
Верхняя часть wdfinstaller.h (включая Wdfinstaller.h)
Библиотека Н/Д (экспортируется библиотекой совместного установщика KMDF. Сведения об имени файла библиотеки совместного установщика см. в разделе Использование совместного установщика KMDF.)

См. также раздел

WdfPostDeviceInstall