Función SetupDiGetActualSectionToInstallA (setupapi.h)
La función SetupDiGetActualSectionToInstall recupera la sección inf DDInstall adecuada que se usará al instalar un dispositivo desde un archivo INF de dispositivo en un equipo local.
Sintaxis
WINSETUPAPI BOOL SetupDiGetActualSectionToInstallA(
[in] HINF InfHandle,
[in] PCSTR InfSectionName,
[out, optional] PSTR InfSectionWithExt,
[in] DWORD InfSectionWithExtSize,
[out, optional] PDWORD RequiredSize,
[out, optional] PSTR *Extension
);
Parámetros
[in] InfHandle
Identificador del archivo INF que contiene la sección DDInstall .
[in] InfSectionName
Puntero al nombre de la sección DDInstall (como se especifica en una sección Modelos INF). La longitud máxima del nombre de sección, en caracteres, es 254.
[out, optional] InfSectionWithExt
Puntero a un búfer de caracteres para recibir el nombre de la sección DDInstall , su extensión de plataforma y un terminador NULL. Este es el nombre de sección decorado que se debe usar para la instalación. Si este parámetro es NULL, InfSectionWithExtSize debe ser cero. Si este parámetro es NULL, la función devuelve TRUE y establece RequiredSize en el tamaño, en caracteres, necesario para devolver el nombre de sección DDInstall , su extensión de plataforma y un carácter NULL de terminación.
[in] InfSectionWithExtSize
Tamaño, en caracteres, del búfer InfSectionWithExt . Si InfSectionWithExt es NULL, este parámetro debe ser cero.
[out, optional] RequiredSize
Puntero a la variable que recibe el tamaño, en caracteres, necesario para devolver el nombre de sección DDInstall , la extensión de plataforma y un carácter NULL de terminación.
[out, optional] Extension
Puntero a una variable que recibe un puntero al carácter '.' que marca el inicio de la extensión en el búfer InfSectionWithExt . Si el búfer InfSectionWithExt no se proporciona o es demasiado pequeño, este parámetro no se establece. Establezca este parámetro en NULL si no se requiere un puntero a la extensión.
Valor devuelto
Si la función se ejecuta correctamente, devuelve TRUE. Si se produce un error en la función, devuelve FALSE. Para obtener información de error extendida, llame a GetLastError.
Comentarios
Esta función admite las extensiones en los nombres de sección DDInstall que se usan para especificar comportamientos de instalación específicos del sistema operativo y específicos de la arquitectura para un dispositivo. Para obtener información sobre estas extensiones, vea Crear archivos INF para varias plataformas y sistemas operativos. SetupDiGetActualSectionToInstall busca un nombre de sección DDInstall que coincida con el equipo local de la manera descrita a continuación.
La función busca primero en el archivo INF especificado un nombre de sección de instalación decorado que coincida con el nombre especificado y tiene una extensión que coincida con el sistema operativo y la arquitectura del procesador del equipo local. Si, por ejemplo, se especifica un nombre de sección de InstallSec, la función busca uno de los siguientes nombres decorados, en función de la arquitectura del procesador del equipo local:
- Para un equipo basado en la arquitectura del procesador x86, la función busca el nombre decorado InstallSec.ntx86.
- Para un equipo basado en la arquitectura del procesador x64, la función busca el nombre decorado InstallSec.ntamd64.
- Para un equipo basado en la arquitectura del procesador Itanium, la función busca el nombre decorado InstallSec.ntia64.
El nombre de la sección DDInstall se usa como base para los nombres de sección hardware y servicios . Por ejemplo, si el nombre de la sección DDInstall que se encuentra es InstallSec.NTX86, el nombre de la sección Services debe denominarse InstallSec.NTX86.Services.
El nombre de la sección DDInstall original especificado en el nodo del controlador se escribe en la entrada de valor InfSection de la clave del registro del controlador. La extensión que se encontró se almacena en la clave como valor de REG_SZ InfSectionExt. Por ejemplo:
InfSection : REG_SZ : "InstallSec"
InfSectionExt : REG_SZ : ".NTX86"
Si no se selecciona un controlador para el elemento de información del dispositivo especificado, se instala un controlador NULL. Tras la devolución, las marcas de la estructura de SP_DEVINSTALL_PARAMS del dispositivo indican si el sistema debe reiniciarse o reiniciarse para que el dispositivo se inicie.
Nota
El encabezado setupapi.h define SetupDiGetActualSectionToInstall como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutro de codificación con código que no es neutral de codificación puede provocar discrepancias que dan lugar a errores de compilación o en tiempo de ejecución. Para obtener más información, vea Convenciones para prototipos de función.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Disponible en Microsoft Windows 2000 y versiones posteriores de Windows. |
Plataforma de destino | Escritorio |
Encabezado | setupapi.h (incluya Setupapi.h) |
Library | Setupapi.lib |