Функция GetTempPathW (fileapi.h)
Извлекает путь к каталогу, назначенному для временных файлов.
Синтаксис
DWORD GetTempPathW(
[in] DWORD nBufferLength,
[out] LPWSTR lpBuffer
);
Параметры
[in] nBufferLength
Размер строкового буфера, определяемого lpBuffer, в TCHAR.
[out] lpBuffer
Указатель на буфер строки, который получает строку, завершающуюся значением NULL, задающую путь к временному файлу. Возвращаемая строка заканчивается обратной косой чертой, например "C:\TEMP\".
Возвращаемое значение
Если функция выполняется успешно, возвращаемое значение равно длине строки, скопированной в lpBuffer в TCHARs, не включая завершающий символ NULL. Если возвращаемое значение больше nBufferLength, возвращаемое значение равно длине буфера, необходимого для хранения пути в TCHAR.
Если функция выполняется неудачно, возвращается нулевое значение. Дополнительные сведения об ошибке можно получить, вызвав GetLastError.
Максимально возможное возвращаемое значение — MAX_PATH+1 (261).
Комментарии
Примечание
Приложения должны вызывать GetTempPath2 вместо GetTempPath.
Функция GetTempPath проверяет наличие переменных среды в следующем порядке и использует первый найденный путь:
- Путь, заданный переменной среды TMP.
- Путь, заданный переменной среды TEMP.
- Путь, заданный переменной среды USERPROFILE.
- Каталог Windows.
Поведение символьной ссылки. Если путь указывает на символьную ссылку, имя временного пути сохраняет все символические ссылки.
В Windows 8 и Windows Server 2012 эта функция поддерживается следующими технологиями.
Технология | Поддерживается |
---|---|
Протокол SMB 3.0 | Да |
SMB 3.0 Transparent Failover (TFO) | Да |
SMB 3.0 с масштабируемыми общими папками (SO) | Да |
Файловая система общего тома кластера (CSVFS) | Да |
Восстанавливаемая файловая система (ReFS) | Да |
Примеры
Пример см. в разделе Создание и использование временного файла.
Примечание
Заголовок fileapi.h определяет GetTempPath в качестве псевдонима, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОД. Использование псевдонима, не зависящий от кодирования, с кодом, который не является нейтральным для кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или времени выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows XP [классические приложения | Приложения UWP] |
Минимальная версия сервера | Windows Server 2003 [классические приложения | Приложения UWP] |
Целевая платформа | Windows |
Header | fileapi.h (включая Windows.h) |
Библиотека | Kernel32.lib |
DLL | Kernel32.dll |