DIF_ALLOW_INSTALL
Una solicitud de DIF_ALLOW_INSTALL pregunta a los instaladores de un dispositivo si Windows puede continuar con la instalación del dispositivo.
Cuándo se envió
Después de seleccionar un controlador para el dispositivo, pero antes de instalar el dispositivo.
Quién controla
Coinserción de clase |
Puede controlar |
Instalador conjunta del dispositivo |
No debe controlar |
Instalador de clase |
Puede controlar |
Entrada del instalador
DeviceInfoSet
Proporciona un identificador al conjunto de información del dispositivo que contiene el dispositivo.
DeviceInfoData
Proporciona un puntero a una estructura de SP_DEVINFO_DATA que identifica el dispositivo en el conjunto de información del dispositivo.
Parámetros de instalación de dispositivos
Hay parámetros de instalación de dispositivos (SP_DEVINSTALL_PARAMS) asociados a DeviceInfoData.
Parámetros de instalación de clases
Ninguno
Salida del instalador
Valor devuelto del instalador
Un co-instalador puede devolver NO_ERROR o un error win32. Un co-instalador no debe devolver ERROR_DI_POSTPROCESSING_REQUIRED para esta solicitud DIF.
Normalmente, un instalador de clase devuelve ERROR_DI_DO_DEFAULT o un código de error win32.
Los códigos de error típicos de Win32 para esta solicitud DIF incluyen ERROR_DI_DONT_INSTALL y ERROR_NON_WINDOWS_NT_DRIVER.
Nota Los instaladores de clase y los coinstaladores no deben freturn ERROR_REQUIRES_INTERACTIVE_WINDOWSTATION, ya que esto hace que se produzca un error en la instalación del dispositivo. Si la instalación del dispositivo requiere interacción del usuario, los instaladores de clase y los coinstaladores deben admitir una acción de instalación de finalización.
Controlador de código DIF predeterminado
Ninguno
Operación del instalador
En respuesta a una solicitud de DIF_ALLOW_INSTALL un instalador confirma si Windows puede instalar el dispositivo.
Un instalador puede producir un error en esta solicitud si determina que el controlador seleccionado es incorrecto (por ejemplo, si el controlador es un controlador de Solo Windows 9x que no funcionará correctamente en sistemas operativos basados en NT) o si determina que se sabe que un controlador seleccionado tiene errores.
Un instalador puede producir un error en esta solicitud si la marca de DI_QUIETINSTALL está establecida en los parámetros de instalación del dispositivo y el instalador debe mostrar la interfaz de usuario durante la instalación del dispositivo. Sin embargo, este error es poco frecuente porque un instalador normalmente puede proporcionar cualquier página de interfaz de usuario en respuesta a la solicitud de DIF_NEWDEVICEWIZARD_FINISHINSTALL. En ese caso, la interfaz de usuario no impide que el instalador realice correctamente una solicitud de DIF_ALLOW_INSTALL para la que se establece la marca silenciosa. Sin embargo, si un instalador no puede limitar su interfaz de usuario al caso de instalación de finalización, el instalador debe producir un error en esta solicitud DIF si se establece la marca de DI_QUIETINSTALL. Un instalador podría tener esta restricción, por ejemplo, si llama al código proporcionado por el proveedor que muestra la interfaz de usuario.
Si un instalador produce un error en esta solicitud de DIF, Windows detiene la instalación.
Si un instalador produce un error en esta solicitud de DIF y DI_QUIETINSTALL no se establece en los parámetros de instalación del dispositivo, el instalador debe mostrar un cuadro de diálogo con un mensaje que explique por qué el dispositivo no está instalado.
Para obtener más información sobre los códigos DIF, consulte Control de códigos DIF.
Requisitos
Versión |
Compatible con Microsoft Windows 2000 y versiones posteriores de Windows. |
Encabezado |
Setupapi.h (incluya Setupapi.h) |