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 GetFileAttributesTransacted .
Sintaxe
BOOL GetFileAttributesExA(
[in] LPCSTR lpFileName,
[in] GET_FILEEX_INFO_LEVELS fInfoLevelId,
[out] LPVOID lpFileInformation
);
Parâmetros
[in] lpFileName
O nome do diretório ou arquivo.
Por padrão, o nome é limitado a MAX_PATH caracteres. Para estender esse limite para 32.767 caracteres largos, acrescente "\\?\" ao caminho. Para obter mais informações, confira Nomear arquivos, caminhos e namespaces.
Dica
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 é uma estrutura WIN32_FILE_ATTRIBUTE_DATA . |
[out] lpFileInformation
Um ponteiro para um buffer que recebe as informações de atributo.
O tipo de informação de atributo armazenado nesse buffer é determinado pelo valor de fInfoLevelId.
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.
Comentários
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.
Em Windows 8 e Windows Server 2012, essa função é compatível com as tecnologias a seguir.
Tecnologia | Com suporte |
---|---|
Protocolo SMB 3.0 | Sim |
TFO (Failover Transparente) do SMB 3.0 | Sim |
SMB 3.0 com compartilhamentos de arquivos de expansão (SO) | Sim |
CsvFS (Sistema de Arquivos de Volume Compartilhado clusterizado) | Sim |
ReFS (Sistema de Arquivos Resiliente) | Sim |
Comportamento de link simbólico – se o caminho apontar para um link 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, todos 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.Observação
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 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
Cliente mínimo com suporte | Windows XP [aplicativos da área de trabalho | Aplicativos UWP] |
Servidor mínimo com suporte | Windows Server 2003 [aplicativos da área de trabalho | Aplicativos UWP] |
Plataforma de Destino | Windows |
Cabeçalho | fileapi.h (inclua Windows.h) |
Biblioteca | Kernel32.lib |
DLL | Kernel32.dll |
Confira também
Constantes de atributo de arquivo