Compartilhar via


Função SetupDiGetActualSectionToInstallA (setupapi.h)

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

Sintaxe

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

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

[in] InfSectionName

Um ponteiro para o nome da seção DDInstall (conforme especificado em um 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 DDInstall nome da seção, sua extensão de plataforma e um terminador NULL. Esse é 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 para o tamanho, em caracteres, que é necessário para retornar o nome da seção DDInstall , sua extensão de plataforma e um caractere NULL de encerramento.

[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 DDInstall nome da seção, a extensão da 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 infSectionWithExt buffer não for fornecido ou for muito pequeno, esse parâmetro não será definido. Defina esse parâmetro para NULL se um ponteiro para a extensão não for necessário.

Valor de retorno

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

Observações

Essa função dá suporte às extensões para DDInstall nomes de seção 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 pesquisa um nome de seção DDInstall que corresponde 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 à arquitetura do sistema operacional e do processador do computador local. Se, por exemplo, você especificar um nome de seção do 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 pesquisa o nome decorado InstallSec.ntx86.
  • Para um computador baseado na arquitetura do processador x64, a função pesquisa o nome decorado InstallSec.ntamd64.
  • Para um computador baseado na arquitetura do processador do Itanium, a função pesquisa 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 procurará 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 hardware e Services. 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 original da seção DDInstall 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 de SP_DEVINSTALL_PARAMS do dispositivo indicam se o sistema deve ser reiniciado ou reinicializado para fazer com que o dispositivo seja iniciado.

Nota

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 do pré-processador UNICODE. A combinação do uso do alias neutro de codificação com código que não é neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Conventions for Function Prototypes.

Requisitos

Requisito Valor
de cliente com suporte mínimo Disponível no Microsoft Windows 2000 e versões posteriores do Windows.
da Plataforma de Destino Área de trabalho
cabeçalho setupapi.h (inclua Setupapi.h)
biblioteca Setupapi.lib

Consulte também

Seção INF DDInstall

SetupDiGetActualSectionToInstallEx

setupDiInstallDevice