Compartir vía


DIF_FIRSTTIMESETUP

Este código DIF está reservado para uso del sistema. Los instaladores proporcionados por el proveedor no deben controlar esta solicitud a menos que el proveedor proporcione dispositivos que no sean PnP que el instalador debe detectar.

Una solicitud de DIF_FIRSTTIMESETUP dirige a un instalador para realizar las tareas de instalación específicas de clase que se deben completar durante la instalación inicial del sistema operativo.

Cuándo se envió

Durante la configuración del modo GUI.

Quién controla

Coinserción de clase

Puede controlar

Instalador conjunta del dispositivo

No controla

Instalador de clase

Puede controlar

Entrada del instalador

DeviceInfoSet
Proporciona un identificador al conjunto de información del dispositivo. Hay una clase de configuración de dispositivo asociada a DeviceInfoSet.

DeviceInfoData
Ninguno

Parámetros de instalación de dispositivos
Hay parámetros de instalación de dispositivos (SP_DEVINSTALL_PARAMS) asociados a DeviceInfoSet.

Parámetros de instalación de clases
Ninguno

Salida del instalador

DeviceInfoSet
Un instalador agrega un elemento de información del dispositivo al DeviceInfoSet para cada dispositivo detectado que quiere tener instalado. Un instalador también puede compilar una lista de controladores de clase global.

Parámetros de instalación de dispositivos
Un instalador puede modificar los parámetros de instalación del dispositivo para DeviceInfoSet o para los nuevos elementos de información del dispositivo que crea.

Valor devuelto del instalador

Un coinserador de clase puede detectar dispositivos durante el preprocesamiento o el postprocesamiento. Este co-instalador devuelve ERROR_DI_POSTPROCESSING_REQUIRED (para postprocesamiento) o devuelve NO_ERROR o un código de error win32 después de sus operaciones de detección. Si un co-instalador no detecta dispositivos, devuelve NO_ERROR de su paso de preprocesamiento.

Si un instalador de clase detecta dispositivos, el instalador devuelve NO_ERROR o un código de error de Win32 adecuado. Si un instalador de clase no controla esta solicitud DIF, el instalador devuelve ERROR_DI_DO_DEFAULT.

Controlador de código DIF predeterminado

Ninguno

Operación del instalador

Para detectar dispositivos que no son PnP durante la configuración del modo GUI, un instalador debe controlar la solicitud de DIF_FIRSTTIMESETUP. El programa de instalación en modo GUI no envía una solicitud de DIF_DETECT al instalador.

La configuración del modo GUI envía una solicitud de DIF_FIRSTTIMESETUP con un DeviceInfoSet vacío. Los instaladores pueden realizar la detección heredada de dispositivos que no son PnP y agregarlos a DeviceInfoSet. Los instaladores proporcionados por el sistema también pueden controlar esta solicitud DIF al migrar instalaciones de dispositivos heredadas de Windows 9x/Me o Windows NT a Microsoft Windows 2000 y versiones posteriores de Windows.

Un instalador detecta nuevos dispositivos de su clase de instalación, en función de la información del Registro, llamando a un componente de detección en modo kernel o consultando unattend.txt información que se almacena cuando se ejecutó una DLL de migración durante una actualización del sistema operativo.

Si un instalador detecta un dispositivo que no es PnP, el instalador debe seleccionar un controlador para el dispositivo de la siguiente manera: crear un elemento de información del dispositivo (SetupDiCreateDeviceInfo), establezca la propiedad SPDRP_HARDWAREID llamando a SetupDiSetDeviceRegistryProperty, llame a SetupDiBuildDriverInfoList y, a continuación, llame a SetupDiCallClassInstaller para enviar una solicitud de DIF_SELECTBESTCOMPATDRV .

Si uno o varios instaladores detectan dispositivos en respuesta a este código DIF, el programa de instalación en modo GUI intenta instalar los dispositivos. El programa de instalación en modo GUI intenta instalar todos los dispositivos en la lista; Si un instalador devuelve un dispositivo que se configuró anteriormente, el programa de instalación en modo GUI instalará el dispositivo dos veces.

Un instalador debe controlar esta solicitud DIF de forma silenciosa. Es decir, sin mostrar la interfaz de usuario al usuario.

Los instaladores no deben realizar tareas cuando controlan esta solicitud DIF que requiere que se reinicie el equipo. Por ejemplo, un instalador de clase no debe establecer controladores que se carguen en el siguiente inicio para determinar qué controladores se realizan correctamente después del reinicio.

Para detectar dispositivos que no son PnP durante la configuración del modo GUI, un instalador debe controlar esta solicitud. El programa de instalación en modo GUI no envía una solicitud de DIF_DETECT.

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)

Consulte también

DIF_SELECTBESTCOMPATDRV

SetupDiBuildDriverInfoList

SetupDiCallClassInstaller

SetupDiCreateDeviceInfo

SetupDiSetDeviceRegistryProperty

SP_DEVINFO_DATA

SP_DEVINSTALL_PARAMS