Função GetTempPath2A (fileapi.h)
Recupera o caminho do diretório designado para arquivos temporários, com base nos privilégios do processo de chamada.
Sintaxe
DWORD GetTempPath2A(
[in] DWORD BufferLength,
[out] LPSTR Buffer
);
Parâmetros
[in] BufferLength
O tamanho do buffer de cadeia de caracteres identificado por lpBuffer, em TCHARs.
[out] Buffer
Um ponteiro para um buffer de cadeia de caracteres que recebe a cadeia de caracteres terminada em nulo especificando o caminho de arquivo temporário. A cadeia de caracteres retornada termina com uma barra invertida, por exemplo, "C:\TEMP\".
Retornar valor
Se a função for bem-sucedida, o valor retornado será o comprimento, em TCHARs, da cadeia de caracteres copiada para lpBuffer, sem incluir o caractere nulo de terminação. Se o valor retornado for maior que nBufferLength, o valor retornado será o comprimento, em TCHARs, do buffer necessário para manter o caminho.
Se a função falhar, o valor retornado será zero. Para obter informações de erro estendidas, chame GetLastError.
O valor retornado máximo possível é MAX_PATH+1 (261).
Comentários
Ao chamar essa função de um processo em execução como SYSTEM, ela retornará o caminho C:\Windows\SystemTemp, que é inacessível para processos não SYSTEM. Para processos não SYSTEM, GetTempPath2 se comportará da mesma forma que GetTempPath.
A função GetTempPath2 verifica a existência de variáveis de ambiente na seguinte ordem e usa o primeiro caminho encontrado:
- O caminho especificado pela variável de ambiente TMP.
- O caminho especificado pela variável de ambiente TEMP.
- O caminho especificado pela variável de ambiente USERPROFILE.
- O diretório do Windows.
Comportamento de link simbólico – se o caminho apontar para um link simbólico, o nome do caminho temporário manterá quaisquer links simbólicos.
No Windows 8 e Windows Server 2012, essa função é compatível com as tecnologias a seguir.
Tecnologia | Com suporte |
---|---|
Protocolo SMB (SMB) 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 Clusterizado (CsvFS) | Sim |
ReFS (Sistema de Arquivos Resiliente) | Sim |
Exemplos
Para obter um exemplo, consulte Criando e usando um arquivo temporário.
Observação
O cabeçalho fileapi.h define GetTempPath2 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 10 Build 20348 |
Servidor mínimo com suporte | Windows Server Build 20348 |
Cabeçalho | fileapi.h (inclua Windows.h) |
Biblioteca | Kernel32.lib |
DLL | Kernel32.dll |