Функция GetTempPath извлекает путь к каталогу, назначенному для временных файлов.
Синтаксис
DWORD GetTempPath( DWORD nBufferLength, // размер буфера LPTSTR lpBuffer // буфер пути ); |
Параметры
nBufferLength
[in] Размер буфера строки, идентифицированного параметром lpBuffer, в TCHARs (символах).lpBuffer
[out] Указатель на буфер строки, который получает символьную строку с нулем в конце, определяющую путь к временному файлу. Возвращенная символьная строка заканчивается обратным слэшем (\), например, C:\TEMP\.Возвращаемые значения
Если функция завершается успешно, возвращаемое значение - длина, в TCHARs, символьной строки, скопированной в lpBuffer, исключая ограничивающий нулевой символ. Если возвращаемое значение больше, чем nBufferLength, возвращаемое значение - размер буфера, который необходим, чтобы вместить путь.
Если функция завершается ошибкой, величина возвращаемого значения - нуль. Чтобы получить дополнительные сведения об ошибке, вызовите GetLastError.
Замечания
Функция GetTempPath проверяет существование переменных окружения в следующем порядке и использует первый найденный путь:
Обратите внимание! на то, что функция не проверяет, что путь существует. |
Windows Me/98/95: Если TMP и TEMP не установлены на допустимый путь, GetTempPath использует текущий каталог.
Код примера
Пример, см. в статье Создание и использование временного файла.
Смотри также
Обзор Управление файлами, Функции, используемые в управлении файлами, GetTempFileName
Размещение и совместимость GetTempPath |
||
К |
Windows XP |
Да |
л |
Windows 2000 Professional |
Да |
и |
Windows NT Workstation |
Да |
е |
Windows Me |
Да |
н |
Windows 98 |
Да |
т |
Windows 95 |
Да |
С |
Windows Server 2003 |
Да |
е | Windows 2000 Server | Да |
р | Windows NT Server | Да |
в | ||
е | ||
р | ||
Используемая библиотека |
Kernel32.lib |
|
Используемая DLL | - | |
Заголовочный файл | ||
- объявлено в |
Winbase.h |
|
- включено в |
Windows.h |
|
Unicode |
Реализуется как версии Unicode и ANSI для Windows 2000/XP. Обратите внимание на то, что поддержка в Windows Me/98/95 требует программы Microsoft Layer for Unicode. |
|
Замечания по платформе |
Не имеется |