Функция GetSystemWindowsDirectoryA (sysinfoapi.h)

Извлекает путь к общему каталогу Windows в многопользовательской системе.

Эта функция предоставляется в первую очередь для обеспечения совместимости. Приложения должны хранить код в папке Program Files, а постоянные данные — в папке Данные приложения в профиле пользователя. Дополнительные сведения см. в разделе ShGetFolderPath.

Синтаксис

UINT GetSystemWindowsDirectoryA(
  [out] LPSTR lpBuffer,
  [in]  UINT  uSize
);

Параметры

[out] lpBuffer

Указатель на буфер для получения пути. Этот путь не заканчивается обратной косой чертой, если каталог Windows не является корневым каталогом. Например, если каталог Windows называется Windows на диске C, путь к каталогу Windows, полученному этой функцией, — C:\Windows. Если система была установлена в корневом каталоге диска C, извлекается путь C:.

[in] uSize

Максимальный размер буфера, указанный параметром lpBuffer , в TCHAR.

Возвращаемое значение

Если функция выполняется успешно, возвращаемое значение — это длина строки, скопированной в буфер в TCHAR, не включая завершающий символ NULL.

Если длина превышает размер буфера, возвращаемое значение равно размеру буфера, необходимому для хранения пути.

Если функция выполняется неудачно, возвращается нулевое значение. Дополнительные сведения об ошибке можно получить, вызвав GetLastError.

Комментарии

В системе со службами терминалов у каждого пользователя есть уникальный каталог Windows. Системный каталог Windows является общим для всех пользователей, поэтому это каталог, в котором приложение должно хранить файлы инициализации и справки, которые применяются ко всем пользователям.

При использовании служб терминалов функция GetSystemWindowsDirectory извлекает путь к системным каталогу Windows, а функция GetWindowsDirectory — путь к каталогу Windows, который является частным для каждого пользователя. В однопользовательской системе GetSystemWindowsDirectory совпадает с командой GetWindowsDirectory.

Примечание

Заголовок sysinfoapi.h определяет GetSystemWindowsDirectory в качестве псевдонима, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОД. Использование псевдонима, не зависящий от кодирования, с кодом, который не является нейтральным для кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или времени выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header sysinfoapi.h (включая Windows.h)
Библиотека Kernel32.lib
DLL Kernel32.dll

См. также

GetWindowsDirectory

SHGetFolderLocation

Функции сведений о системе