Função SetupGetInfInformationA (setupapi.h)
[Essa função está disponível para uso nos sistemas operacionais indicados na seção Requisitos. Ele poderá ser alterado ou ficar indisponível em versões subsequentes. SetupAPI não deve mais ser usado para instalar aplicativos. Em vez disso, use o Windows Installer para desenvolver instaladores de aplicativos. SetupAPI continua a ser usado para instalar drivers de dispositivo.]
A função SetUpGetInfInformation retorna a estrutura SP_INF_INFORMATION do arquivo INF especificado para um buffer.
Sintaxe
WINSETUPAPI BOOL SetupGetInfInformationA(
[in] LPCVOID InfSpec,
[in] DWORD SearchControl,
[in, out] PSP_INF_INFORMATION ReturnBuffer,
[in] DWORD ReturnBufferSize,
[in, out] PDWORD RequiredSize
);
Parâmetros
[in] InfSpec
Manipular ou um nome de arquivo para um arquivo INF, dependendo do valor de SearchControl.
[in] SearchControl
Esse parâmetro pode ser uma das seguintes constantes.
INFINFO_INF_SPEC_IS_HINF
InfSpec é um identificador INF. Um único identificador INF poderá referenciar vários arquivos INF se eles tiverem sido carregados juntos por acréscimo. Se isso acontecer, a estrutura retornada por essa função conterá vários conjuntos de informações.
INFINFO_INF_NAME_IS_ABSOLUTE
A cadeia de caracteres especificada para InfSpec é um caminho completo. Nenhum processamento adicional é executado no InfSpec.
INFINFO_DEFAULT_SEARCH
Pesquise os locais padrão para o arquivo INF especificado para InfSpec, que é considerado apenas um nome de arquivo. Os locais padrão são %windir%\inf, seguidos por %windir%\system32.
INFINFO_REVERSE_DEFAULT_SEARCH
O mesmo que INFINFO_DEFAULT_SEARCH, exceto que os locais padrão são pesquisados em ordem inversa.
INFINFO_INF_PATH_LIST_SEARCH
Pesquise o INF em cada um dos diretórios listados na entrada de valor DevicePath no seguinte:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion
[in, out] ReturnBuffer
Se não for NULL, apontará para um buffer no qual essa função retornará a estrutura SP_INF_INFORMATION .
Você pode chamar a função uma vez para obter o tamanho do buffer necessário, alocar a memória necessária e, em seguida, chamar a função uma segunda vez para recuperar os dados. Usando essa técnica, você pode evitar erros devido a um tamanho de buffer insuficiente. Para obter mais informações, confira a seção Comentários deste tópico.
[in] ReturnBufferSize
Tamanho de ReturnBuffer, em bytes.
[in, out] RequiredSize
Se não for NULL, aponta para uma variável na qual essa função retorna o tamanho necessário, em bytes, para o buffer apontado por ReturnBuffer.
Se ReturnBuffer for especificado e o tamanho necessário for maior que ReturnBufferSize, a função falhará e uma chamada para GetLastError retornará ERROR_INSUFFICIENT_BUFFER.
Retornar valor
Se a função for bem-sucedida, o valor retornado será um valor diferente de zero.
Se a função falhar, o valor retornado será zero (0). Para obter informações de erro estendidas, chame GetLastError.
Se o arquivo INF não puder ser localizado, a função retornará FALSE e uma chamada subsequente para GetLastError retornará ERROR_FILE_NOT_FOUND.
Comentários
Se essa função for chamada com um ReturnBuffer de NULL e um ReturnBufferSize de 0 (zero), a função colocará o tamanho do buffer necessário para manter os dados especificados na variável apontada por RequiredSize. Se a função for bem-sucedida, o valor retornado será um valor diferente de zero. Caso contrário, o valor retornado será 0 (zero) e as informações de erro estendidas poderão ser obtidas chamando GetLastError.
Observação
O cabeçalho setupapi.h define SetupGetInfInformation 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 | Windows XP [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2003 [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | setupapi.h |
Biblioteca | Setupapi.lib |
DLL | Setupapi.dll |