Função GetFileAttributesExA (fileapi.h)
Recupera atributos para um arquivo ou diretório especificado.
Para executar essa operação como uma operação transacionada, use a função
Sintaxe
BOOL GetFileAttributesExA(
[in] LPCSTR lpFileName,
[in] GET_FILEEX_INFO_LEVELS fInfoLevelId,
[out] LPVOID lpFileInformation
);
Parâmetros
[in] lpFileName
O nome do arquivo ou diretório.
Por padrão, o nome é limitado a MAX_PATH caracteres. Para estender esse limite para 32.767 caracteres de largura, acrescente "\\?\" ao caminho. Para obter mais informações, consulte Arquivos de Nomenclatura, Caminhos e Namespaces.
Ponta
A partir do Windows 10, versão 1607, você pode optar por remover a limitação de MAX_PATH sem acrescentar "\\?\". Consulte a seção "Limitação máxima do comprimento do caminho" de arquivos de nomenclatura, caminhos e namespaces para obter detalhes.
[in] fInfoLevelId
Uma classe de informações de atributo a serem recuperadas.
Esse parâmetro pode ser o seguinte valor da enumeração GET_FILEEX_INFO_LEVELS.
Valor | Significado |
---|---|
|
O parâmetro lpFileInformation |
[out] lpFileInformation
Um ponteiro para um buffer que recebe as informações de atributo.
O tipo de informações de atributo armazenadas nesse buffer é determinado pelo valor de fInfoLevelId.
Valor de retorno
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.
Observações
A função GetFileAttributes recupera informações de atributo do sistema de arquivos. GetFileAttributesEx pode obter outros conjuntos de informações de atributo de arquivo ou diretório. Atualmente, GetFileAttributesEx recupera um conjunto de atributos padrão que é um superconjunto das informações de atributo do sistema de arquivos.
Quando a função GetFileAttributesEx é chamada em um diretório que é uma pasta montada, ela retorna os atributos do diretório, não os do diretório raiz no volume que a pasta montada associa ao diretório. Para obter os atributos do volume associado, chame GetVolumeNameForVolumeMountPoint para obter o nome do volume associado. Em seguida, use o nome resultante em uma chamada para GetFileAttributesEx. Os resultados são os atributos do diretório raiz no volume associado.
No Windows 8 e no Windows Server 2012, essa função é compatível com as tecnologias a seguir.
Tecnologia | Suportado |
---|---|
Protocolo SMB (Bloco de Mensagens do Servidor) 3.0 | Sim |
TFO (Failover Transparente) do SMB 3.0 | Sim |
SMB 3.0 com Compartilhamentos de Arquivos de Expansão (SO) | Sim |
Sistema de Arquivos de Volume Compartilhado de Cluster (CsvFS) | Sim |
ReFS (Sistema de Arquivos Resiliente) | Sim |
Comportamento simbólico de vínculo — se o caminho apontar para um vínculo simbólico, a função retornará atributos para o link simbólico.
operações transacionadas
Se um arquivo estiver aberto para modificação em uma transação, nenhum outro thread poderá abrir o arquivo para modificação até que a transação seja confirmada. Portanto, se um thread transacionado abrir o arquivo primeiro, os threads subsequentes que tentarem modificar o arquivo antes que a transação seja confirmada receberão uma violação de compartilhamento. Se um thread não transacionado modificar o arquivo antes do thread transacionado e o arquivo ainda estiver aberto quando a transação tentar abri-lo, a transação receberá o erro ERROR_TRANSACTIONAL_CONFLICT.Nota
O cabeçalho fileapi.h define GetFileAttributesEx 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 | Windows XP [aplicativos da área de trabalho | Aplicativos UWP] |
servidor com suporte mínimo | Windows Server 2003 [aplicativos da área de trabalho | Aplicativos UWP] |
da Plataforma de Destino |
Windows |
cabeçalho | fileapi.h (inclua Windows.h) |
biblioteca | Kernel32.lib |
de DLL |
Kernel32.dll |
Consulte também
constantes de atributo de arquivo