Função SetupDiGetActualSectionToInstallW (setupapi.h)

A função SetupDiGetActualSectionToInstall recupera a seção DDInstall do INF apropriada a ser usada ao instalar um dispositivo de um arquivo INF do dispositivo em um computador local.

Sintaxe

WINSETUPAPI BOOL SetupDiGetActualSectionToInstallW(
  [in]            HINF   InfHandle,
  [in]            PCWSTR InfSectionName,
  [out, optional] PWSTR  InfSectionWithExt,
  [in]            DWORD  InfSectionWithExtSize,
  [out, optional] PDWORD RequiredSize,
  [out, optional] PWSTR  *Extension
);

Parâmetros

[in] InfHandle

O identificador para o arquivo INF que contém a seção DDInstall .

[in] InfSectionName

Um ponteiro para o nome da seção DDInstall (conforme especificado em uma seção Modelos INF). O comprimento máximo do nome da seção, em caracteres, é 254.

[out, optional] InfSectionWithExt

Um ponteiro para um buffer de caracteres para receber o nome da seção DDInstall , sua extensão de plataforma e um terminador NULL. Este é o nome da seção decorada que deve ser usado para instalação. Se esse parâmetro for NULL, InfSectionWithExtSize deverá ser zero. Se esse parâmetro for NULL, a função retornará TRUE e definirá RequiredSize como o tamanho, em caracteres, necessário para retornar o nome da seção DDInstall , sua extensão de plataforma e um caractere NULL de terminação.

[in] InfSectionWithExtSize

O tamanho, em caracteres, do buffer InfSectionWithExt . Se InfSectionWithExt for NULL, esse parâmetro deverá ser zero.

[out, optional] RequiredSize

Um ponteiro para a variável que recebe o tamanho, em caracteres, que é necessário para retornar o nome da seção DDInstall , a extensão de plataforma e um caractere NULL de terminação.

[out, optional] Extension

Um ponteiro para uma variável que recebe um ponteiro para o caractere '.' que marca o início da extensão no buffer InfSectionWithExt . Se o buffer InfSectionWithExt não for fornecido ou for muito pequeno, esse parâmetro não será definido. Defina esse parâmetro como NULL se um ponteiro para a extensão não for necessário.

Retornar valor

Se a função for bem-sucedida, ela retornará TRUE. Se a função falhar, ela retornará FALSE. Para obter informações de erro estendidas, chame GetLastError.

Comentários

Essa função dá suporte às extensões para nomes de seção DDInstall que são usados para especificar comportamentos de instalação específicos do sistema operacional e específicos da arquitetura para um dispositivo. Para obter informações sobre essas extensões, consulte Criando arquivos INF para várias plataformas e sistemas operacionais. SetupDiGetActualSectionToInstall procura um nome de seção DDInstall que corresponda ao computador local da maneira descrita abaixo.

A função primeiro pesquisa no arquivo INF especificado um nome de seção de instalação decorado que corresponde ao nome especificado e tem uma extensão que corresponde ao sistema operacional e à arquitetura do processador do computador local. Se, por exemplo, você especificar um nome de seção installSec, a função procurará um dos seguintes nomes decorados, dependendo da arquitetura do processador do computador local:

  • Para um computador baseado na arquitetura do processador x86, a função procura o nome decorado InstallSec.ntx86.
  • Para um computador baseado na arquitetura do processador x64, a função procura o nome decorado InstallSec.ntamd64.
  • Para um computador baseado na arquitetura do processador itanium, a função procura o nome decorado InstallSec.ntia64.
Se a função encontrar uma correspondência para o nome, o sistema operacional e a arquitetura do processador, ela encerrará a pesquisa e retornará o nome decorado correspondente. Se a função não encontrar essa correspondência, a função pesquisa uma seção cujo nome é InstallSec.NT. Se a função encontrar uma correspondência para InstallSec.NT, ela encerrará a pesquisa e retornará esse nome. Se a função não encontrar uma correspondência para nenhuma das pesquisas acima, ela retornará InstallSec, mas não verificará se o arquivo INF contém uma seção de instalação cujo nome é InstallSec.

O nome da seção DDInstall é usado como base para nomes de seção de Hardware e Serviços . Por exemplo, se o nome da seção DDInstall encontrado for InstallSec.NTX86, o nome da seção Serviços deverá ser nomeado InstallSec.NTX86.Services.

O nome da seção DDInstall original especificado no nó do driver é gravado na entrada de valor InfSection da chave do Registro do driver. A extensão encontrada é armazenada na chave como o valor REG_SZ InfSectionExt. Por exemplo:

InfSection       : REG_SZ :    "InstallSec"
InfSectionExt    : REG_SZ :    ".NTX86"

Se um driver não estiver selecionado para o elemento de informações do dispositivo especificado, um driver nulo será instalado. Após o retorno, os sinalizadores na estrutura SP_DEVINSTALL_PARAMS do dispositivo indicam se o sistema deve ser reiniciado ou reinicializado para fazer com que o dispositivo seja iniciado.

Observação

O cabeçalho setupapi.h define SetupDiGetActualSectionToInstall como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante de pré-processador UNICODE. Misturar o uso do alias neutro de codificação com código que não seja neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Convenções para protótipos de função.

Requisitos

Requisito Valor
Cliente mínimo com suporte Disponível no Microsoft Windows 2000 e versões posteriores do Windows.
Plataforma de Destino Área de Trabalho
Cabeçalho setupapi.h (inclua Setupapi.h)
Biblioteca Setupapi.lib

Confira também

Seção INF DDInstall

SetupDiGetActualSectionToInstallEx

SetupDiInstallDevice