Функция SystemParametersInfoA (winuser.h)

Важно!

Некоторые сведения относятся к предварительной версии продукта, который может быть существенно изменен до его коммерческого выпуска. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.

Извлекает или задает значение одного из параметров всей системы. Эта функция также может обновлять профиль пользователя при настройке параметра.

Синтаксис

BOOL SystemParametersInfoA(
  [in]      UINT  uiAction,
  [in]      UINT  uiParam,
  [in, out] PVOID pvParam,
  [in]      UINT  fWinIni
);

Параметры

[in] uiAction

Тип: UINT

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

  • Параметры специальных возможностей
  • Параметры рабочего стола
  • Параметры значка
  • Входные параметры
  • Параметры меню
  • Параметры питания
  • Параметры заставки
  • Параметры времени ожидания
  • Параметры эффекта пользовательского интерфейса
  • Параметры окна

Ниже приведены параметры специальных возможностей.

Параметр специальных возможностей Значение
SPI_GETACCESSTIMEOUT
0x003C
Извлекает сведения о периоде ожидания, связанном с функциями специальных возможностей. Параметр pvParam должен указывать на структуру ACCESSTIMEOUT , которая получает сведения. Присвойте элементу cbSize этой структуры и параметру uiParam значение sizeof(ACCESSTIMEOUT).
SPI_GETAUDIODESCRIPTION
0x0074
Определяет, включены или отключены описания звука. Параметр pvParam является указателем на структуру AUDIODESCRIPTION . Присвойте элементу cbSize этой структуры и параметру uiParam значение sizeof(AUDIODESCRIPTION).

Хотя пользователи с нарушениями зрения могут слышать звук в видеосодержимом, есть много действий в видео, которые не имеют соответствующего звука. Конкретное звуковое описание происходящего в видео помогает этим пользователям лучше понять содержимое. Этот флаг позволяет определить, включены ли описания звука и на каком языке.

Windows Server 2003 и Windows XP/2000: Этот параметр не поддерживается.

SPI_GETCLIENTAREAANIMATION
0x1042
Определяет, включены или отключены анимации. Параметр pvParam должен указывать на переменную BOOL , которая получает значение TRUE , если анимация включена, или false в противном случае.

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

Windows Server 2003 и Windows XP/2000: Этот параметр не поддерживается.

SPI_GETDISABLEOVERLAPPEDCONTENT
0x1040
Определяет, включено или отключено перекрывающееся содержимое. Параметр pvParam должен указывать на переменную BOOL , которая получает значение TRUE , если этот параметр включен, или FALSE в противном случае.

Такие функции отображения, как фоновые изображения, текстурированный фон, водяные знаки на документах, альфа-смешивание и прозрачность, могут уменьшить контрастность переднего плана и фона, что усложняет пользователям со слабым зрением видеть объекты на экране. Этот флаг позволяет определить, было ли отключено такое перекрывающееся содержимое.

Windows Server 2003 и Windows XP/2000: Этот параметр не поддерживается.

SPI_GETFILTERKEYS
0x0032
Извлекает сведения о функции специальных возможностей FilterKeys. Параметр pvParam должен указывать на структуру FILTERKEYS , которая получает сведения. Присвойте элементу cbSize этой структуры и параметру uiParam значение sizeof(FILTERKEYS).
SPI_GETFOCUSBORDERHEIGHT
0x2010
Извлекает высоту (в пикселях) верхнего и нижнего краев прямоугольника фокуса, нарисованного с помощью DrawFocusRect. Параметр pvParam должен указывать на значение UINT .

Windows 2000: Этот параметр не поддерживается.

SPI_GETFOCUSBORDERWIDTH
0x200E
Извлекает ширину (в пикселях) левого и правого краев прямоугольника фокуса, нарисованного с помощью DrawFocusRect. Параметр pvParam должен указывать на UINT.

Windows 2000: Этот параметр не поддерживается.

SPI_GETHIGHCONTRAST
0x0042
Извлекает сведения о функции специальных возможностей HighContrast. Параметр pvParam должен указывать на структуру HIGHCONTRAST , которая получает сведения. Присвойте элементу cbSize этой структуры и параметру uiParam значение sizeof(HIGHCONTRAST).

Общие сведения см. в разделе Примечания.

SPI_GETLOGICALDPIOVERRIDE
0x009E
Извлекает значение, определяющее, отображает ли Windows 8 приложения, использующие плато масштабирования по умолчанию для оборудования или переход к следующему более высокому плато. Это значение основано на текущем параметре "Сделать все на экране больше", который находится в разделе Специальные возможностипараметров компьютера: 1 включен, 0 — отключен.

Приложения могут предоставлять текстовые и графические ресурсы для каждого из нескольких плато масштабирования: 100%, 140% и 180%. Предоставление отдельных ресурсов, оптимизированных для определенной шкалы, позволяет избежать искажений из-за изменения размера. Windows 8 определяет соответствующее плато масштабирования на основе ряда факторов, включая размер экрана и плотность пикселей. Если выбрано значение "Сделать все на экране больше" (SPI_GETLOGICALDPIOVERRIDE возвращает значение 1), Windows использует ресурсы из следующего более высокого плато. Например, в случае оборудования, которое, по определению Windows, должно использовать масштаб SCALE_100_PERCENT, это переопределение приводит к тому, что Windows будет использовать значение SCALE_140_PERCENT масштабирования, предполагая, что оно не нарушает другие ограничения.

Примечание Не следует использовать это значение. Она может быть изменена или недоступна в последующих версиях Windows. Вместо этого используйте функцию GetScaleFactorForDevice или класс DisplayProperties , чтобы получить предпочтительный коэффициент масштабирования. Классические приложения должны использовать логическое разрешение на рабочий стол, а не коэффициент масштабирования. Логическое разрешение на рабочий стол можно получить с помощью функции GetDeviceCaps .
 
SPI_GETMESSAGEDURATION
0x2016
Извлекает время отображения всплывающих окон уведомлений в секундах. Параметр pvParam должен указывать на ULONG , получающий длительность сообщения.

Пользователям с нарушениями зрения или когнитивными заболеваниями, такими как СДВГ и дислексия, может потребоваться больше времени, чтобы прочитать текст в уведомлениях. Этот флаг позволяет получить длительность сообщения.

Windows Server 2003 и Windows XP/2000: Этот параметр не поддерживается.

SPI_GETMOUSECLICKLOCK
0x101E
Извлекает состояние функции ClickLock мыши. Параметр pvParam должен указывать на переменную BOOL , которая получает значение TRUE , если этот параметр включен, или FALSE в противном случае. Дополнительные сведения см. в разделе Общие сведения о вводе с помощью мыши.

Windows 2000: Этот параметр не поддерживается.

SPI_GETMOUSECLICKLOCKTIME
0x2008
Извлекает задержку времени до блокировки основной кнопки мыши. Параметр pvParam должен указывать на DWORD , получающий задержку времени в миллисекундах. Эта функция включена, только если SPI_SETMOUSECLICKLOCK имеет значение TRUE. Дополнительные сведения см. в разделе Общие сведения о вводе с помощью мыши.

Windows 2000: Этот параметр не поддерживается.

SPI_GETMOUSEKEYS
0x0036
Извлекает сведения о специальных возможностях MouseKeys. Параметр pvParam должен указывать на структуру MOUSEKEYS , которая получает сведения. Присвойте элементу cbSize этой структуры и параметру uiParam значение sizeof(MOUSEKEYS).
SPI_GETMOUSESONAR
0x101C
Извлекает состояние функции "Сонар мыши". Параметр pvParam должен указывать на переменную BOOL , которая получает значение TRUE , если этот параметр включен, или FALSE в противном случае. Дополнительные сведения см. в разделе Общие сведения о вводе с помощью мыши.

Windows 2000: Этот параметр не поддерживается.

SPI_GETMOUSEVANISH
0x1020
Извлекает состояние функции "Исчезновение мыши". Параметр pvParam должен указывать на переменную BOOL , которая получает значение TRUE , если этот параметр включен, или FALSE в противном случае. Дополнительные сведения см. в разделе Общие сведения о вводе с помощью мыши.

Windows 2000: Этот параметр не поддерживается.

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

Параметр pvParam является указателем на переменную BOOL , которая получает значение TRUE , если запущена программа проверки экрана, или FALSE в противном случае.

Примечание Экранный диктор, средство чтения с экрана, которое входит в состав Windows, не устанавливает флаги SPI_SETSCREENREADER или SPI_GETSCREENREADER .
 
SPI_GETSERIALKEYS
0x003E
Этот параметр не поддерживается.

Windows Server 2003 и Windows XP/2000: Пользователь должен управлять этим параметром с помощью панели управления.

SPI_GETSHOWSOUNDS
0x0038
Определяет, включен или отключен флаг специальных возможностей Показать звуки. Если он включен, пользователю требуется, чтобы приложение визуализировать информацию в ситуациях, когда в противном случае она будет представлять информацию только в звуковой форме. Параметр pvParam должен указывать на переменную BOOL , которая получает значение TRUE , если функция включена, или FALSE , если она отключена.

Использование этого значения эквивалентно вызову GetSystemMetrics с SM_SHOWSOUNDS. Это рекомендуемый вызов.

SPI_GETSOUNDSENTRY
0x0040
Извлекает сведения о функции специальных возможностей SoundSentry. Параметр pvParam должен указывать на структуру SOUNDSENTRY , которая получает сведения. Присвойте элементу cbSize этой структуры и параметру uiParam значение sizeof(SOUNDSENTRY).
SPI_GETSTICKYKEYS
0x003A
Извлекает сведения о функции специальных возможностей StickyKeys. Параметр pvParam должен указывать на структуру STICKYKEYS , которая получает сведения. Присвойте элементу cbSize этой структуры и параметру uiParam значение sizeof(STICKYKEYS).
SPI_GETTOGGLEKEYS
0x0034
Извлекает сведения о функции специальных возможностей ToggleKeys. Параметр pvParam должен указывать на структуру TOGGLEKEYS , которая получает сведения. Присвойте элементу cbSize этой структуры и параметру uiParam значение sizeof(TOGGLEKEYS).
SPI_SETACCESSTIMEOUT
0x003D
Задает период времени ожидания, связанный с функциями специальных возможностей. Параметр pvParam должен указывать на структуру ACCESSTIMEOUT , содержащую новые параметры. Присвойте элементу cbSize этой структуры и параметру uiParam значение sizeof(ACCESSTIMEOUT).
SPI_SETAUDIODESCRIPTION
0x0075
Включает или отключает функцию звуковых описаний. Параметр pvParam является указателем на структуру AUDIODESCRIPTION .

Хотя пользователи с нарушениями зрения могут слышать звук в видеоконтенте, есть много действий в видео, которые не имеют соответствующего звука. Конкретное звуковое описание происходящего в видео помогает этим пользователям лучше понять содержимое. Этот флаг позволяет включать или отключать описания звука на языках, на которых они предоставляются.

Windows Server 2003 и Windows XP/2000: Этот параметр не поддерживается.

SPI_SETCLIENTAREAANIMATION
0x1043
Включает или отключает анимацию клиентской области. Параметр pvParam является переменной BOOL . Установите для pvParam значение TRUE , чтобы включить анимацию и другие временные эффекты в клиентской области, или FALSE , чтобы отключить их.

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

Windows Server 2003 и Windows XP/2000: Этот параметр не поддерживается.

SPI_SETDISABLEOVERLAPPEDCONTENT
0x1041
Включает или отключает перекрывающееся содержимое (например, фоновые изображения и подложки). Параметр pvParam является переменной BOOL . Установите для параметра pvParamзначение TRUE , чтобы отключить перекрывающееся содержимое, или FALSE , чтобы включить перекрывающееся содержимое.

Такие функции отображения, как фоновые изображения, текстурированный фон, водяные знаки на документах, альфа-смешивание и прозрачность, могут уменьшить контрастность переднего плана и фона, что усложняет пользователям со слабым зрением видеть объекты на экране. Этот флаг позволяет включать или отключать все такое перекрывающееся содержимое.

Windows Server 2003 и Windows XP/2000: Этот параметр не поддерживается.

SPI_SETFILTERKEYS
0x0033
Задает параметры функции специальных возможностей FilterKeys. Параметр pvParam должен указывать на структуру FILTERKEYS , содержащую новые параметры. Присвойте элементу cbSize этой структуры и параметру uiParam значение sizeof(FILTERKEYS).
SPI_SETFOCUSBORDERHEIGHT
0x2011
Задает высоту верхнего и нижнего краев прямоугольника фокуса, нарисованного с помощью DrawFocusRect , значение параметра pvParam .

Windows 2000: Этот параметр не поддерживается.

SPI_SETFOCUSBORDERWIDTH
0x200F
Задает высоту левого и правого краев прямоугольника фокуса, нарисованного с помощью DrawFocusRect , значение параметра pvParam .

Windows 2000: Этот параметр не поддерживается.

SPI_SETHIGHCONTRAST
0x0043
Задает параметры функции специальных возможностей HighContrast. Параметр pvParam должен указывать на структуру HIGHCONTRAST , содержащую новые параметры. Присвойте элементу cbSize этой структуры и параметру uiParam значение sizeof(HIGHCONTRAST).
SPI_SETLOGICALDPIOVERRIDE
0x009F
Не используйте.
SPI_SETMESSAGEDURATION
0x2017
Задает время отображения всплывающих окон уведомлений в секундах. Параметр pvParam указывает длительность сообщения.

Пользователям с нарушениями зрения или когнитивными заболеваниями, такими как СДВГ и дислексия, может потребоваться больше времени, чтобы прочитать текст в уведомлениях. Этот флаг позволяет задать длительность сообщения.

Windows Server 2003 и Windows XP/2000: Этот параметр не поддерживается.

SPI_SETMOUSECLICKLOCK
0x101F
Включает или отключает функцию специальных возможностей Mouse ClickLock. Эта функция временно блокирует основную кнопку мыши при нажатии и удержании этой кнопки в течение времени, указанного SPI_SETMOUSECLICKLOCKTIME. Параметр pvParam задает значение TRUE для параметра on или FALSE для параметра off. Значение по умолчанию — off. Дополнительные сведения см. в разделах Примечания и Входные данные AboutMouse.

Windows 2000: Этот параметр не поддерживается.

SPI_SETMOUSECLICKLOCKTIME
0x2009
Настраивает временную задержку перед блокировкой основной кнопки мыши. Параметр uiParam должен иметь значение 0. Параметр pvParam указывает на DWORD , указывающий задержку времени в миллисекундах. Например, укажите 1000 для задержки в 1 секунду. Значение по умолчанию — 1200. Дополнительные сведения см. в разделе Общие сведения о вводе с помощью мыши.

Windows 2000: Этот параметр не поддерживается.

SPI_SETMOUSEKEYS
0x0037
Задает параметры функции специальных возможностей MouseKeys. Параметр pvParam должен указывать на структуру MOUSEKEYS , содержащую новые параметры. Присвойте элементу cbSize этой структуры и параметру uiParam значение sizeof(MOUSEKEYS).
SPI_SETMOUSESONAR
0x101D
Включает или отключает функцию специальных возможностей Sonar. Эта функция кратко показывает несколько концентрических кругов вокруг указателя мыши, когда пользователь нажимает и отпускает клавишу CTRL. Параметр pvParam задает значение TRUE для параметра on и FALSE для параметра off. Значение по умолчанию — off. Дополнительные сведения см. в разделе Общие сведения о вводе с помощью мыши.

Windows 2000: Этот параметр не поддерживается.

SPI_SETMOUSEVANISH
0x1021
Включает или отключает функцию "Исчезать". Эта функция скрывает указатель мыши при вводе пользователем; указатель снова появляется, когда пользователь перемещает мышь. Параметр pvParam задает значение TRUE для параметра on и FALSE для параметра off. Значение по умолчанию — off. Дополнительные сведения см. в разделе Общие сведения о вводе с помощью мыши.

Windows 2000: Этот параметр не поддерживается.

SPI_SETSCREENREADER
0x0047
Определяет, запущена ли служебная программа проверки экрана. Параметр uiParam задает значение TRUE для параметра on или FALSE для параметра off.
Примечание Экранный диктор, средство чтения с экрана, которое входит в состав Windows, не устанавливает флаги SPI_SETSCREENREADER или SPI_GETSCREENREADER .
 
SPI_SETSERIALKEYS
0x003F
Этот параметр не поддерживается.

Windows Server 2003 и Windows XP/2000: Пользователь должен управлять этим параметром с помощью панели управления.

SPI_SETSHOWSOUNDS
0x0039
Включает или отключает функцию специальных возможностей ShowSounds. Параметр uiParam задает значение TRUE для параметра on или FALSE для параметра off.
SPI_SETSOUNDSENTRY
0x0041
Задает параметры функции специальных возможностей SoundSentry . Параметр pvParam должен указывать на структуру SOUNDSENTRY , содержащую новые параметры. Присвойте элементу cbSize этой структуры и параметру uiParam значение sizeof(SOUNDSENTRY).
SPI_SETSTICKYKEYS
0x003B
Задает параметры функции специальных возможностей StickyKeys. Параметр pvParam должен указывать на структуру STICKYKEYS , содержащую новые параметры. Присвойте элементу cbSize этой структуры и параметру uiParam значение sizeof(STICKYKEYS).
SPI_SETTOGGLEKEYS
0x0035
Задает параметры функции специальных возможностей ToggleKeys. Параметр pvParam должен указывать на структуру TOGGLEKEYS , содержащую новые параметры. Присвойте элементу cbSize этой структуры и параметру uiParam значение sizeof(TOGGLEKEYS).
 

Ниже приведены параметры рабочего стола.

Параметр рабочего стола Значение
SPI_GETCLEARTYPE
0x1048
Определяет, включен ли ClearType. Параметр pvParam должен указывать на переменную BOOL , которая получает значение TRUE , если параметр ClearType включен, или FALSE в противном случае.

ClearType — это программная технология, которая повышает удобочитаемость текста на жидкокристаллических дисплеях (ЖК-мониторах).

Windows Server 2003 и Windows XP/2000: Этот параметр не поддерживается.

SPI_GETDESKWALLPAPER
0x0073
Извлекает полный путь к файлу растрового рисунка для обои рабочего стола. Параметр pvParam должен указывать на буфер для получения строки пути, заканчивающейся null. Задайте для параметра uiParam размер (в символах) буфера pvParam . Возвращаемая строка не будет превышать MAX_PATH символов. Если обои рабочего стола отсутствуют, возвращаемая строка пуста.
SPI_GETDROPSHADOW
0x1024
Определяет, включен ли эффект тени. Параметр pvParam должен указывать на переменную BOOL , которая возвращает значение TRUE , если параметр включен, или FALSE , если он отключен.

Windows 2000: Этот параметр не поддерживается.

SPI_GETFLATMENU
0x1022
Определяет, имеют ли собственные пользовательские меню плоский вид меню. Параметр pvParam должен указывать на переменную BOOL , которая возвращает значение TRUE , если задан вид плоского меню, или false в противном случае.

Windows 2000: Этот параметр не поддерживается.

SPI_GETFONTSMOOTHING
0x004A
Определяет, включена ли функция сглаживания шрифтов. Эта функция использует сглаживание шрифтов, чтобы сделать кривые шрифта более гладкими, рисуя пиксели на разных уровнях серого.

Параметр pvParam должен указывать на переменную BOOL , которая получает значение TRUE , если функция включена, или FALSE , если это не так.

SPI_GETFONTSMOOTHINGCONTRAST
0x200C
Извлекает значение контрастности, используемое в сглаживание ClearType . Параметр pvParam должен указывать на UINT , получающий сведения. Допустимые значения контрастности — от 1000 до 2200. Значение по умолчанию — 1400.

Windows 2000: Этот параметр не поддерживается.

SPI_GETFONTSMOOTHINGORIENTATION
0x2012
Извлекает ориентацию сглаживания шрифта. Параметр pvParam должен указывать на UINT , получающий сведения. Возможные значения : FE_FONTSMOOTHINGORIENTATIONBGR (сине-зеленый-красный) и FE_FONTSMOOTHINGORIENTATIONRGB (красный-зеленый-синий).

Windows XP/2000: Этот параметр не поддерживается до windows XP с пакетом обновления 2 (SP2).

SPI_GETFONTSMOOTHINGTYPE
0x200A
Извлекает тип сглаживания шрифта. Параметр pvParam должен указывать на UINT , получающий сведения. Возможные значения : FE_FONTSMOOTHINGSTANDARD и FE_FONTSMOOTHINGCLEARTYPE.

Windows 2000: Этот параметр не поддерживается.

SPI_GETWORKAREA
0x0030
Извлекает размер рабочей области на основном мониторе дисплея. Рабочая область — это часть экрана, не скрытая системной панелью задач или панелью инструментов рабочего стола приложения. Параметр pvParam должен указывать на структуру RECT , которая получает координаты рабочей области, выраженные в физическом размере пикселей. Любой режим виртуализации DPI вызывающего объекта не влияет на эти выходные данные.

Чтобы получить рабочую область монитора, отличного от основного монитора, вызовите функцию GetMonitorInfo .

SPI_SETCLEARTYPE
0x1049
Включает или отключает ClearType. Параметр pvParam является переменной BOOL . Установите для параметра pvParamзначение TRUE , чтобы включить ClearType, или FALSE , чтобы отключить его.

ClearType — это программная технология, которая повышает удобочитаемость текста на ЖК-мониторах.

Windows Server 2003 и Windows XP/2000: Этот параметр не поддерживается.

SPI_SETCURSORS
0x0057
Перезагружает системные курсоры. Задайте для параметра uiParam нулевое значение, а для параметра pvParamзначение NULL.
SPI_SETDESKPATTERN
0x0015
Задает текущий шаблон рабочего стола, заставляя Windows считывать параметр Pattern= из файла WIN.INI.
SPI_SETDESKWALLPAPER
0x0014
Примечание При использовании флага SPI_SETDESKWALLPAPER SystemParametersInfo возвращает значение TRUE, если не возникнет ошибка (например, если указанный файл не существует).
 
SPI_SETDROPSHADOW
0x1025
Включает или отключает эффект тени. Установите для параметра pvParam значение TRUE , чтобы включить эффект тени, или FALSE , чтобы отключить его. Вы также должны иметь CS_DROPSHADOW в стиле класса окна.

Windows 2000: Этот параметр не поддерживается.

SPI_SETFLATMENU
0x1023
Включает или отключает внешний вид плоского меню для собственных пользовательских меню. Установите для параметра pvParam значение TRUE , чтобы включить отображение плоского меню, или FALSE , чтобы отключить его.

Если этот параметр включен, строка меню использует COLOR_MENUBAR для фона панели меню, COLOR_MENU для фона всплывающего меню, COLOR_MENUHILIGHT для заливки текущего меню и COLOR_HILIGHT для контура текущего меню. Если этот параметр отключен, меню рисуются с использованием те же метрики и цвета, что и в Windows 2000.

Windows 2000: Этот параметр не поддерживается.

SPI_SETFONTSMOOTHING
0x004B
Включает или отключает функцию сглаживания шрифтов, которая использует сглаживание шрифта, чтобы сделать кривые шрифта более гладкими путем рисования пикселей на разных уровнях серого.

Чтобы включить эту функцию, задайте для параметра uiParam значение TRUE. Чтобы отключить эту функцию, задайте для uiParamзначение FALSE.

SPI_SETFONTSMOOTHINGCONTRAST
0x200D
Задает значение контрастности, используемое в сглаживание ClearType . Параметр pvParam является значением контрастности. Допустимые значения контрастности — от 1000 до 2200. Значение по умолчанию — 1400.

SPI_SETFONTSMOOTHINGTYPE также необходимо задать значение FE_FONTSMOOTHINGCLEARTYPE.

Windows 2000: Этот параметр не поддерживается.

SPI_SETFONTSMOOTHINGORIENTATION
0x2013
Задает ориентацию сглаживания шрифта. Параметр pvParam имеет значение FE_FONTSMOOTHINGORIENTATIONBGR (сине-зеленый-красный) или FE_FONTSMOOTHINGORIENTATIONRGB (красный-зеленый-синий).

Windows XP/2000: Этот параметр не поддерживается до windows XP с пакетом обновления 2 (SP2).

SPI_SETFONTSMOOTHINGTYPE
0x200B
Задает тип сглаживания шрифта. Параметр pvParam либо FE_FONTSMOOTHINGSTANDARD, если используется стандартное сглаживание, либо FE_FONTSMOOTHINGCLEARTYPE, если используется ClearType . Значение по умолчанию — FE_FONTSMOOTHINGSTANDARD.

SPI_SETFONTSMOOTHING также необходимо задать.

Windows 2000: Этот параметр не поддерживается.

SPI_SETWORKAREA
0x002F
Задает размер рабочей области. Рабочая область — это часть экрана, не скрытая системной панелью задач или панелью инструментов рабочего стола приложения. Параметр pvParam — это указатель на структуру RECT , которая задает новый прямоугольник рабочей области, выраженный в координатах виртуального экрана. В системе с несколькими мониторами отображения функция задает рабочую область монитора, содержащего указанный прямоугольник.
 

Ниже приведены параметры значка.

Параметр Icon Значение
SPI_GETICONMETRICS
0x002D
Извлекает метрики, связанные со значками. Параметр pvParam должен указывать на структуру ICONMETRICS , которая получает информацию. Присвойте элементу cbSize этой структуры и параметру uiParam значение sizeof(ICONMETRICS).
SPI_GETICONTITLELOGFONT
0x001F
Извлекает сведения о логическом шрифте для текущего шрифта заголовка значка. Параметр uiParam указывает размер структуры LOGFONT , а параметр pvParam должен указывать на структуру LOGFONT для заполнения.
SPI_GETICONTITLEWRAP
0x0019
Определяет, включена ли оболочка заголовка значков. Параметр pvParam должен указывать на переменную BOOL , которая получает значение TRUE , если включено, или FALSE в противном случае.
SPI_ICONHORIZONTALSPACING
0x000D
Задает или извлекает ширину ячейки значка (в пикселях). Система использует этот прямоугольник для размещения значков в режиме крупных значков.

Чтобы задать это значение, задайте для uiParam новое значение, а для параметра pvParamзначение NULL. Это значение не может быть меньше SM_CXICON.

Чтобы получить это значение, pvParam должен указывать на целое число, которое получает текущее значение.

SPI_ICONVERTICALSPACING
0x0018
Задает или извлекает высоту ячейки значка в пикселях.

Чтобы задать это значение, задайте для uiParam новое значение, а для параметра pvParamзначение NULL. Это значение не может быть меньше SM_CYICON.

Чтобы получить это значение, pvParam должен указывать на целое число, которое получает текущее значение.

SPI_SETICONMETRICS
0x002E
Задает метрики, связанные со значками. Параметр pvParam должен указывать на структуру ICONMETRICS , содержащую новые параметры. Присвойте элементу cbSize этой структуры и параметру uiParam значение sizeof(ICONMETRICS).
SPI_SETICONS
0x0058
Перезагружает системные значки. Задайте для параметра uiParam нулевое значение, а для параметра pvParamзначение NULL.
SPI_SETICONTITLELOGFONT
0x0022
Задает шрифт, используемый для заголовков значков. Параметр uiParam указывает размер структуры LOGFONT , а параметр pvParam должен указывать на структуру LOGFONT .
SPI_SETICONTITLEWRAP
0x001A
Включает или отключает перенос заголовка значков. Параметр uiParam задает значение TRUE для параметра on или FALSE для параметра off.
 

Ниже приведены входные параметры. Они включают параметры, связанные с клавиатурой, мышью, сенсорной панелью, пером, языком ввода и предупреждением.

Входной параметр Значение
SPI_GETBEEP
0x0001
Определяет, включена ли оповещение.

Параметр pvParam должен указывать на переменную BOOL , которая получает значение TRUE , если beeper включен, или FALSE , если он отключен.

SPI_GETBLOCKSENDINPUTRESETS
0x1026
Извлекает bool , указывающий, может ли приложение сбросить таймер экранной заставки, вызывая функцию SendInput для имитации ввода с помощью клавиатуры или мыши. Параметр pvParam должен указывать на переменную BOOL , которая получает значение TRUE , если имитация входных данных будет заблокирована, или false в противном случае.
SPI_GETCONTACTVISUALIZATION
0x2018
Извлекает текущий параметр визуализации контакта. Параметр pvParam должен указывать на переменную ULONG , которая получает параметр . Дополнительные сведения см. в разделе Визуализация контактов.
SPI_GETDEFAULTINPUTLANG
0x0059
Извлекает идентификатор входного языкового стандарта для системного языка ввода по умолчанию. Параметр pvParam должен указывать на переменную HKL , которая получает это значение. Дополнительные сведения см. в разделе Языки, языковые параметры и раскладки клавиатуры.
SPI_GETGESTUREVISUALIZATION
0x201A
Извлекает текущий параметр визуализации жестов. Параметр pvParam должен указывать на переменную ULONG , которая получает параметр . Дополнительные сведения см. в разделе Визуализация жестов.
SPI_GETKEYBOARDCUES
0x100A
Определяет, всегда ли подчеркиваются клавиши доступа к меню. Параметр pvParam должен указывать на переменную BOOL , которая получает значение TRUE , если клавиши доступа к меню всегда подчеркнуты, и FALSE , если они подчеркнуты только при активации меню с помощью клавиатуры.
SPI_GETKEYBOARDDELAY
0x0016
Извлекает параметр задержки повтора клавиатуры, который представляет собой значение в диапазоне от 0 (приблизительно 250 мс задержки) до 3 (приблизительно 1 секунда задержки). Фактическая задержка, связанная с каждым значением, может отличаться в зависимости от оборудования. Параметр pvParam должен указывать на целочисленную переменную, которая получает параметр .
SPI_GETKEYBOARDPREF
0x0044
Определяет, использует ли пользователь клавиатуру, а не мышь, и хочет, чтобы приложения отображали интерфейсы клавиатуры, которые в противном случае были бы скрыты. Параметр pvParam должен указывать на переменную BOOL , которая получает значение TRUE , если пользователь использует клавиатуру; в противном случае — false .
SPI_GETKEYBOARDSPEED
0x000A
Извлекает параметр скорости повтора клавиатуры, который представляет собой значение в диапазоне от 0 (приблизительно 2,5 повторений в секунду) до 31 (приблизительно 30 повторений в секунду). Фактическая частота повторения зависит от оборудования и может отличаться от линейной шкалы на целых 20 %. Параметр pvParam должен указывать на переменную DWORD , которая получает параметр .
SPI_GETMOUSE
0x0003
Извлекает два пороговых значения мыши и ускорение мыши. Параметр pvParam должен указывать на массив из трех целых чисел, который получает эти значения. Дополнительные сведения см. в разделе mouse_event .
SPI_GETMOUSEHOVERHEIGHT
0x0064
Извлекает высоту (в пикселях) прямоугольника, в котором указатель мыши должен оставаться для trackMouseEvent для создания сообщения WM_MOUSEHOVER . Параметр pvParam должен указывать на переменную UINT , которая получает высоту.
SPI_GETMOUSEHOVERTIME
0x0066
Извлекает время (в миллисекундах), в течение которого указатель мыши должен оставаться в прямоугольнике наведения для TrackMouseEvent для создания сообщения WM_MOUSEHOVER . Параметр pvParam должен указывать на переменную UINT , которая получает время.
SPI_GETMOUSEHOVERWIDTH
0x0062
Извлекает ширину (в пикселях) прямоугольника, в котором должен оставаться указатель мыши для trackMouseEvent для создания сообщения WM_MOUSEHOVER . Параметр pvParam должен указывать на переменную UINT , которая получает ширину.
SPI_GETMOUSESPEED
0x0070
Возвращает текущую скорость мыши. Скорость мыши определяет, насколько далеко будет двигаться указатель, в зависимости от расстояния, на который перемещается мышь. Параметр pvParam должен указывать на целое число, которое получает значение в диапазоне от 1 (самый медленный) до 20 (самый быстрый). Значение 10 является значением по умолчанию. Значение может быть задано конечным пользователем с помощью приложения панели управления мышью или приложением с помощью SPI_SETMOUSESPEED.
SPI_GETMOUSETRAILS
0x005E
Определяет, включена ли функция "Следы мыши". Эта функция улучшает видимость перемещения курсора мыши, кратко отображая следы курсоров и быстро стирая их.

Параметр pvParam должен указывать на целочисленную переменную, которая получает значение. Если значение равно нулю или 1, функция отключена. Если значение больше 1, функция включена, а значение указывает количество курсоров, нарисованных в следе. Параметр uiParam не используется.

Windows 2000: Этот параметр не поддерживается.

SPI_GETMOUSEWHEELROUTING
0x201C
Извлекает параметр маршрутизации для ввода колесика мыши. Параметр маршрутизации определяет, отправляется ли ввод колесика мыши в приложение с фокусом (передний план) или приложение под курсором мыши.

Параметр pvParam должен указывать на переменную DWORD , которая получает параметр маршрутизации. Параметр uiParam не используется.

Если значение равно нулю (MOUSEWHEEL_ROUTING_FOCUS), в приложение с фокусом доставляется ввод колесика мыши. Если значение равно 1 (MOUSEWHEEL_ROUTING_HYBRID), ввод колесика мыши доставляется в приложение с фокусом (классические приложения) или приложение под указателем мыши (приложения Магазина Windows).

Начиная с Windows 10: Если значение равно 2 (MOUSEWHEEL_ROUTING_MOUSE_POS), входные данные колесика мыши доставляются в приложение под указателем мыши. Это новое значение по умолчанию, и MOUSEWHEEL_ROUTING_HYBRID больше недоступен в параметрах.

SPI_GETPENVISUALIZATION
0x201E
Возвращает текущий параметр визуализации жеста пера. Параметр pvParam должен указывать на переменную ULONG , которая получает параметр . Дополнительные сведения см. в разделе Визуализация пера.
SPI_GETSNAPTODEFBUTTON
0x005F
Определяет, включена ли функция привязки к кнопке по умолчанию. Если этот параметр включен, курсор мыши автоматически переместится на кнопку по умолчанию, например ОК или Применить, диалогового окна. Параметр pvParam должен указывать на переменную BOOL , которая получает значение TRUE , если функция включена, или FALSE , если она отключена.
SPI_GETSYSTEMLANGUAGEBAR
0x1050
Начиная с Windows 8: Определяет, включена или отключена системная языковая панель. Параметр pvParam должен указывать на переменную BOOL , которая получает значение TRUE , если языковая панель включена, или FALSE в противном случае.
SPI_GETTHREADLOCALINPUTSETTINGS
0x104E
Начиная с Windows 8: Определяет, имеют ли активные входные параметры локальную (для каждого потока, TRUE) или глобальную (сеанс, FALSE) область. Параметр pvParam должен указывать на переменную BOOL .
SPI_GETTOUCHPADPARAMETERS
0x00AE
Начиная с Windows 11 версии 24H2: Извлекает сведения о сенсорной панели Precision, включая параметры пользователя и системные сведения, связанные с сенсорной панелью.

Параметр pvParam должен указывать на TOUCHPAD_PARAMETERS структуру.

Параметр uiParam должен указывать размер структуры.

Значение поля versionNumber в структуре TOUCHPAD_PARAMETERS должно иметь соответствующее значение для используемой версии структуры.

SPI_GETWHEELSCROLLCHARS
0x006C
Извлекает количество символов для прокрутки при перемещении горизонтального колесика мыши. Параметр pvParam должен указывать на переменную UINT , которая получает количество строк. Значение по умолчанию равно 3.
SPI_GETWHEELSCROLLLINES
0x0068
Извлекает количество строк для прокрутки при перемещении вертикального колесика мыши. Параметр pvParam должен указывать на переменную UINT , которая получает количество строк. Значение по умолчанию равно 3.
SPI_SETBEEP
0x0002
Включает или отключает предупреждающий beeper. Параметр uiParam задает значение TRUE для параметра on или FALSE для параметра off.
SPI_SETBLOCKSENDINPUTRESETS
0x1027
Определяет, может ли приложение сбросить таймер заставки, вызвав функцию SendInput для имитации ввода с помощью клавиатуры или мыши. Параметр uiParam задает значение TRUE , если экранная заставка не будет деактивирована с помощью имитированных входных данных, или FALSE , если экранная заставка будет отключена с помощью имитации входных данных.
SPI_SETCONTACTVISUALIZATION
0x2019
Задает текущий параметр визуализации контакта. Параметр pvParam должен указывать на переменную ULONG , которая идентифицирует параметр. Дополнительные сведения см. в разделе Визуализация контактов.
Примечание Если визуализации контактов отключены, визуализации жестов нельзя включить.
 
SPI_SETDEFAULTINPUTLANG
0x005A
Задает язык ввода по умолчанию для системной оболочки и приложений. Указанный язык должен отображаться с использованием текущей системной кодировки. Параметр pvParam должен указывать на переменную HKL , содержащую идентификатор входного языкового стандарта для языка по умолчанию. Дополнительные сведения см. в разделе Языки, языковые параметры и раскладки клавиатуры.
SPI_SETDOUBLECLICKTIME
0x0020
Задает время двойного щелчка мыши в значение параметра uiParam . Если значение uiParam превышает 5000 миллисекунда, система устанавливает время двойного щелчка в 5000 миллисекундах.

Время двойного щелчка — это максимальное количество миллисекунд, которое может произойти между первым и вторым щелчком двойного щелчка. Вы также можете вызвать функцию SetDoubleClickTime , чтобы задать время двойного щелчка. Чтобы получить текущее время двойного щелчка, вызовите функцию GetDoubleClickTime .

SPI_SETDOUBLECLKHEIGHT
0x001E
Задает высоту прямоугольника двойного щелчка в значение параметра uiParam .

Прямоугольник двойного щелчка — это прямоугольник, в который должен попасть второй щелчок двойного щелчка, чтобы он был зарегистрирован как двойной щелчок.

Чтобы получить высоту прямоугольника двойного щелчка, вызовите Метод GetSystemMetrics с флагом SM_CYDOUBLECLK .

SPI_SETDOUBLECLKWIDTH
0x001D
Задает ширину прямоугольника двойного щелчка в значение параметра uiParam .

Прямоугольник двойного щелчка — это прямоугольник, в который должен попасть второй щелчок двойного щелчка, чтобы он был зарегистрирован как двойной щелчок.

Чтобы получить ширину прямоугольника двойного щелчка, вызовите Метод GetSystemMetrics с флагом SM_CXDOUBLECLK .

SPI_SETGESTUREVISUALIZATION
0x201B
Задает текущий параметр визуализации жестов. Параметр pvParam должен указывать на переменную ULONG , которая идентифицирует параметр. Дополнительные сведения см. в разделе Визуализация жестов.
Примечание Если визуализации контактов отключены, визуализации жестов нельзя включить.
 
SPI_SETKEYBOARDCUES
0x100B
Задает подчеркивание букв клавиш доступа к меню. Параметр pvParam является переменной BOOL . Задайте для pvParam значение TRUE , чтобы всегда подчеркивать клавиши доступа к меню, или значение FALSE , чтобы подчеркнуть клавиши доступа к меню, только если меню активировано с клавиатуры.
SPI_SETKEYBOARDDELAY
0x0017
Задает параметр повтора клавиатуры с задержкой. Параметр uiParam должен указывать значение 0, 1, 2 или 3, где нуль задает самую короткую задержку приблизительно 250 мс, а 3 — самую длинную задержку (приблизительно 1 секунду). Фактическая задержка, связанная с каждым значением, может отличаться в зависимости от оборудования.
SPI_SETKEYBOARDPREF
0x0045
Задает предпочтительный параметр клавиатуры. Параметр uiParam задает значение TRUE , если пользователь использует клавиатуру, а не мышь и хочет, чтобы приложения отображали интерфейсы клавиатуры, которые в противном случае были бы скрыты; В противном случае uiParam имеет значение FALSE .
SPI_SETKEYBOARDSPEED
0x000B
Задает параметр скорости повтора клавиатуры. Параметр uiParam должен указывать значение в диапазоне от 0 (приблизительно 2,5 повторений в секунду) до 31 (приблизительно 30 повторений в секунду). Фактическая частота повторения зависит от оборудования и может отличаться от линейной шкалы на целых 20 %. Если uiParam больше 31, параметру присваивается значение 31.
SPI_SETLANGTOGGLE
0x005B
Задает набор горячих клавиш для переключения между языками ввода. Параметры uiParam и pvParam не используются. Значение задает сочетания клавиш на листах свойств клавиатуры, повторно считывая реестр. Реестр необходимо задать перед использованием этого флага. путь в реестре: HKEY_CURRENT_USER\Раскладка клавиатуры\Переключение

. Допустимые значения: "1" = ALT+SHIFT, "2" = CTRL+SHIFT и "3" = нет.
SPI_SETMOUSE
0x0004
Задает два пороговых значения мыши и ускорение мыши. Параметр pvParam должен указывать на массив из трех целых чисел, задающий эти значения. Дополнительные сведения см. в разделе mouse_event .
SPI_SETMOUSEBUTTONSWAP
0x0021
Меняет или восстанавливает значение левой и правой кнопок мыши. Параметр uiParam задает значение TRUE для замены значений кнопок, или FALSE для восстановления их исходного значения.

Чтобы получить текущий параметр, вызовите Метод GetSystemMetrics с флагом SM_SWAPBUTTON .

SPI_SETMOUSEHOVERHEIGHT
0x0065
Задает высоту (в пикселях) прямоугольника, в пределах которого должен оставаться указатель мыши, чтобы TrackMouseEvent создал WM_MOUSEHOVER сообщение. Задайте для параметра uiParam новую высоту.
SPI_SETMOUSEHOVERTIME
0x0067
Задает время (в миллисекундах), в течение которого указатель мыши должен оставаться в прямоугольнике наведения для TrackMouseEvent для создания сообщения WM_MOUSEHOVER . Используется только в том случае, если вы передаете HOVER_DEFAULT в параметре dwHoverTime в вызове TrackMouseEvent. Задайте для параметра uiParam новое время.

Указанное время должно находиться в диапазоне от USER_TIMER_MAXIMUMдо USER_TIMER_MINIMUM. Если значение uiParam меньше USER_TIMER_MINIMUM, функция будет использовать USER_TIMER_MINIMUM. Если значение uiParam больше USER_TIMER_MAXIMUM, функция будет USER_TIMER_MAXIMUM.

Windows Server 2003 и Windows XP: Операционная система не принудительно использует USER_TIMER_MAXIMUM и USER_TIMER_MINIMUM до Windows Server 2003 с пакетом обновления 1 (SP1) и Windows XP с пакетом обновления 2 (SP2).

SPI_SETMOUSEHOVERWIDTH
0x0063
Задает ширину (в пикселях) прямоугольника, в котором должен оставаться указатель мыши, чтобы TrackMouseEvent создал WM_MOUSEHOVER сообщение. Задайте для параметра uiParam новую ширину.
SPI_SETMOUSESPEED
0x0071
Задает текущую скорость мыши. Параметр pvParam — это целое число от 1 (самый медленный) до 20 (самый быстрый). Значение 10 является значением по умолчанию. Обычно это значение задается с помощью приложения панели управления мышью.
SPI_SETMOUSETRAILS
0x005D
Включает или отключает функцию "Следы мыши", которая улучшает видимость перемещения курсора мыши, кратко отображая следы курсоров и быстро стирая их.

Чтобы отключить эту функцию, задайте для параметра uiParam значение 0 или 1. Чтобы включить эту функцию, задайте для uiParam значение больше 1, чтобы указать количество курсоров, нарисованных в следе.

Windows 2000: Этот параметр не поддерживается.

SPI_SETMOUSEWHEELROUTING
0x201D
Задает параметр маршрутизации для ввода колесика мыши. Параметр маршрутизации определяет, отправляется ли ввод колесика мыши в приложение с фокусом (передний план) или приложение под курсором мыши.

Параметр pvParam должен указывать на переменную DWORD , которая получает параметр маршрутизации. Задайте для параметра uiParam нулевое значение.

Если значение равно нулю (MOUSEWHEEL_ROUTING_FOCUS), в приложение с фокусом доставляется ввод колесика мыши. Если значение равно 1 (MOUSEWHEEL_ROUTING_HYBRID), ввод колесика мыши доставляется в приложение с фокусом (классические приложения) или приложение под указателем мыши (приложения Магазина Windows).

Начиная с Windows 10: Если значение равно 2 (MOUSEWHEEL_ROUTING_MOUSE_POS), входные данные колесика мыши доставляются в приложение под указателем мыши. Это новое значение по умолчанию, и MOUSEWHEEL_ROUTING_HYBRID больше недоступен в параметрах.

SPI_SETPENVISUALIZATION
0x201F
Задает текущий параметр визуализации жестов пера. Параметр pvParam должен указывать на переменную ULONG , которая идентифицирует параметр. Дополнительные сведения см. в разделе Визуализация пера.
SPI_SETSNAPTODEFBUTTON
0x0060
Включает или отключает функцию привязки к кнопке по умолчанию. Если этот параметр включен, курсор мыши автоматически переместится на кнопку по умолчанию, например ОК или Применить, диалогового окна. Задайте для параметра uiParam значение TRUE , чтобы включить функцию, или значение FALSE , чтобы отключить ее. Приложения должны использовать функцию ShowWindow при отображении диалогового окна, чтобы диспетчер диалогов смог разместить курсор мыши.
SPI_SETSYSTEMLANGUAGEBAR
0x1051
Начиная с Windows 8: Включает или отключает устаревшую функцию языковой панели. Параметр pvParam является указателем на переменную BOOL . Установите для параметра pvParamзначение TRUE , чтобы включить устаревшую языковую панель, или FALSE , чтобы отключить ее. Флаг поддерживается в Windows 8, где устаревшая языковая панель заменяется переключателем ввода и поэтому отключена по умолчанию. Включение устаревшей языковой панели предоставляется для обеспечения совместимости и не влияет на переключатель ввода.
SPI_SETTHREADLOCALINPUTSETTINGS
0x104F
Начиная с Windows 8: Определяет, имеют ли активные входные параметры локальную (для потока, TRUE) или глобальную (сеанс, FALSE) область. Параметр pvParam должен быть переменной BOOL , приведение к ней с помощью PVOID.
SPI_SETTOUCHPADPARAMETERS
0x00AF
Начиная с Windows 11 версии 24H2: Задает сведения о сенсорной панели Precision, включая параметры пользователя и системные сведения, связанные с сенсорной панелью.

Параметр pvParam должен указывать на TOUCHPAD_PARAMETERS структуру.

Параметр uiParam должен указывать размер структуры.

Значение поля versionNumber в структуре TOUCHPAD_PARAMETERS должно иметь соответствующее значение для используемой версии структуры.

SPI_SETWHEELSCROLLCHARS
0x006D
Задает количество символов для прокрутки при перемещении горизонтального колесика мыши. Количество символов задается из параметра uiParam .
SPI_SETWHEELSCROLLLINES
0x0069
Задает количество строк для прокрутки при перемещении вертикального колесика мыши. Количество строк задается с помощью параметра uiParam .

Количество строк — это предлагаемое количество строк для прокрутки при накате колесика мыши без использования клавиш-модификаторов. Если число равно 0, прокрутка не должна выполняться. Если количество прокручиваемых строк больше числа доступных для просмотра строк и, в частности, если оно WHEEL_PAGESCROLL (#defined как UINT_MAX), операция прокрутки должна интерпретироваться как щелчок один раз в области страницы вниз или вверх на полосе прокрутки.

 

Ниже приведены параметры меню.

Параметр меню Значение
SPI_GETMENUDROPALIGNMENT
0x001B
Определяет, выровнены ли всплывающие меню по левому краю или по правому краю относительно соответствующего пункта строки меню. Параметр pvParam должен указывать на переменную BOOL , которая получает значение TRUE при выравнивании по правому краю, или FALSE в противном случае.
SPI_GETMENUFADE
0x1012
Определяет, включена ли анимация затухания меню. Параметр pvParam должен указывать на переменную BOOL , которая получает значение TRUE , когда анимация исчезания включена, и FALSE , когда она нераспределена. Если анимация затухания отключена, в меню используется анимация слайдов. Этот флаг игнорируется, если не включена анимация меню, что можно сделать с помощью флага SPI_SETMENUANIMATION . Дополнительные сведения см. в разделе AnimateWindow.
SPI_GETMENUSHOWDELAY
0x006A
Извлекает время ожидания системы (в миллисекундах) перед отображением контекстного меню при наведении курсора мыши на элемент вложенного меню. Параметр pvParam должен указывать на переменную DWORD , которая получает время задержки.
SPI_SETMENUDROPALIGNMENT
0x001C
Задает значение выравнивания всплывающих меню. Параметр uiParam задает значение TRUE для выравнивания по правому краю или FALSE для выравнивания по левому краю.
SPI_SETMENUFADE
0x1013
Включает или отключает анимацию затухания меню. Установите для параметра pvParam значение TRUE , чтобы включить эффект затухания меню, или значение FALSE , чтобы отключить его. Если анимация затухания отключена, в меню используется анимация слайдов. Эффект выцветания меню возможен только в том случае, если система имеет глубину цвета более 256 цветов. Этот флаг игнорируется, если не задано SPI_MENUANIMATION . Дополнительные сведения см. в разделе AnimateWindow.
SPI_SETMENUSHOWDELAY
0x006B
Задает uiParam время (в миллисекундах), которое система ожидает перед отображением контекстного меню при наведении курсора мыши на элемент вложенного меню.
 

Ниже приведены параметры питания.

Начиная с Windows Server 2008 и Windows Vista эти параметры питания не поддерживаются. Вместо этого, чтобы определить текущее состояние питания дисплея, приложение должно зарегистрироваться для GUID_MONITOR_POWER_STATE уведомлений. Чтобы определить время ожидания выключения текущего дисплея, приложение должно зарегистрироваться для уведомления об изменениях в параметре питания GUID_VIDEO_POWERDOWN_TIMEOUT . Дополнительные сведения см. в разделе Регистрация для событий Power.

Windows Server 2003 и Windows XP/2000: Чтобы определить текущее состояние питания дисплея, используйте следующие параметры питания.

Параметр Power Значение
SPI_GETLOWPOWERACTIVE
0x0053
Этот параметр не поддерживается.

Windows Server 2003 и Windows XP/2000: Определяет, включена ли фаза сохранения экрана с низким энергопотреблением. Параметр pvParam должен указывать на переменную BOOL , которая получает значение TRUE , если она включена, или FALSE , если она отключена. Этот флаг поддерживается только для 32-разрядных приложений.

SPI_GETLOWPOWERTIMEOUT
0x004F
Этот параметр не поддерживается.

Windows Server 2003 и Windows XP/2000: Извлекает значение времени ожидания для маломощного этапа сохранения экрана. Параметр pvParam должен указывать на целочисленную переменную, которая получает значение . Этот флаг поддерживается только для 32-разрядных приложений.

SPI_GETPOWEROFFACTIVE
0x0054
Этот параметр не поддерживается. Если включена фаза выключения при сохранении экрана, параметр питания GUID_VIDEO_POWERDOWN_TIMEOUT больше нуля.

Windows Server 2003 и Windows XP/2000: Определяет, включена ли фаза выключения при сохранении экрана. Параметр pvParam должен указывать на переменную BOOL , которая получает значение TRUE , если она включена, или FALSE , если она отключена. Этот флаг поддерживается только для 32-разрядных приложений.

SPI_GETPOWEROFFTIMEOUT
0x0050
Этот параметр не поддерживается. Вместо этого проверьте параметр питания GUID_VIDEO_POWERDOWN_TIMEOUT .

Windows Server 2003 и Windows XP/2000: Извлекает значение времени ожидания для этапа выключения при сохранении экрана. Параметр pvParam должен указывать на целочисленную переменную, которая получает значение . Этот флаг поддерживается только для 32-разрядных приложений.

SPI_SETLOWPOWERACTIVE
0x0055
Этот параметр не поддерживается.

Windows Server 2003 и Windows XP/2000: Активирует или отключает маломощный этап сохранения экрана. Задайте для uiParam значение 1, чтобы активировать, или нулевое значение для деактивации. Параметр pvParam должен иметь значение NULL. Этот флаг поддерживается только для 32-разрядных приложений.

SPI_SETLOWPOWERTIMEOUT
0x0051
Этот параметр не поддерживается.

Windows Server 2003 и Windows XP/2000: Задает значение времени ожидания (в секундах) для маломощного этапа сохранения экрана. Параметр uiParam указывает новое значение. Параметр pvParam должен иметь значение NULL. Этот флаг поддерживается только для 32-разрядных приложений.

SPI_SETPOWEROFFACTIVE
0x0056
Этот параметр не поддерживается. Вместо этого задайте параметр питания GUID_VIDEO_POWERDOWN_TIMEOUT .

Windows Server 2003 и Windows XP/2000: Активирует или отключает этап выключения при сохранении экрана. Задайте для uiParam значение 1, чтобы активировать, или нулевое значение для деактивации. Параметр pvParam должен иметь значение NULL. Этот флаг поддерживается только для 32-разрядных приложений.

SPI_SETPOWEROFFTIMEOUT
0x0052
Этот параметр не поддерживается. Вместо этого задайте для параметра питания GUID_VIDEO_POWERDOWN_TIMEOUT значение времени ожидания.

Windows Server 2003 и Windows XP/2000: Задает значение времени ожидания (в секундах) для этапа выключения питания при сохранении экрана. Параметр uiParam указывает новое значение. Параметр pvParam должен иметь значение NULL. Этот флаг поддерживается только для 32-разрядных приложений.

 

Ниже приведены параметры заставки.

Параметр заставки Значение
SPI_GETSCREENSAVEACTIVE
0x0010
Определяет, включено ли сохранение экрана. Параметр pvParam должен указывать на переменную BOOL , которая получает значение TRUE , если включено сохранение экрана, или FALSE в противном случае.

Windows 7, Windows Server 2008 R2 и Windows 2000: Функция возвращает значение TRUE , даже если сохранение экрана не включено.

SPI_GETSCREENSAVERRUNNING
0x0072
Определяет, запущена ли в данный момент заставка на оконной станции вызывающего процесса. Параметр pvParam должен указывать на переменную BOOL , которая получает значение TRUE , если заставка запущена, или false в противном случае. Обратите внимание, что только на интерактивной оконной станции WinSta0 может быть запущена заставка.
SPI_GETSCREENSAVESECURE
0x0076
Определяет, требуется ли заставка пароля для отображения рабочего стола Windows. Параметр pvParam должен указывать на переменную BOOL , которая получает значение TRUE , если для заставки требуется пароль, или false в противном случае. Параметр uiParam игнорируется.

Windows Server 2003 и Windows XP/2000: Этот параметр не поддерживается.

SPI_GETSCREENSAVETIMEOUT
0x000E
Извлекает значение времени ожидания заставки экрана в секундах. Параметр pvParam должен указывать на целочисленную переменную, которая получает значение .
SPI_SETSCREENSAVEACTIVE
0x0011
Задает состояние заставки. Параметр uiParam указывает значение TRUE для активации сохранения экрана или FALSE , чтобы отключить его.

Если компьютер перешел в режим энергосбережения или состояние блокировки системы, возникает ERROR_OPERATION_IN_PROGRESS исключение.

SPI_SETSCREENSAVESECURE
0x0077
Задает, требует ли заставка ввода пароля для отображения рабочего стола Windows. Параметр uiParam является переменной BOOL . Параметр pvParam игнорируется. Задайте для uiParam значение TRUE , чтобы требовать пароль, или FALSE , чтобы не требовать пароль.

Если компьютер перешел в режим энергосбережения или состояние блокировки системы, возникает ERROR_OPERATION_IN_PROGRESS исключение.

Windows Server 2003 и Windows XP/2000: Этот параметр не поддерживается.

SPI_SETSCREENSAVETIMEOUT
0x000F
Устанавливает значение времени ожидания средства сохранения экрана в значение параметра uiParam . Это значение — время в секундах, в течение которого система должна находиться в режиме простоя перед активацией заставки.

Если компьютер перешел в режим энергосбережения или состояние блокировки системы, возникает ERROR_OPERATION_IN_PROGRESS исключение.

 

Ниже приведены параметры времени ожидания для приложений и служб.

Параметр времени ожидания Значение
SPI_GETHUNGAPPTIMEOUT
0x0078
Извлекает количество миллисекундах, которое поток может идти без отправки сообщения, прежде чем система сочтет его неотвеченным. Параметр pvParam должен указывать на целочисленную переменную, которая получает значение .

Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP/2000: Этот параметр не поддерживается.

SPI_GETWAITTOKILLTIMEOUT
0x007A
Извлекает количество миллисекундах, которое система ожидает перед завершением работы приложения, которое не отвечает на запрос на завершение работы. Параметр pvParam должен указывать на целочисленную переменную, которая получает значение .

Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP/2000: Этот параметр не поддерживается.

SPI_GETWAITTOKILLSERVICETIMEOUT
0x007C
Извлекает время в миллисекундах, которое диспетчер управления службами ожидает перед завершением службы, которая не отвечает на запрос на завершение работы. Параметр pvParam должен указывать на целочисленную переменную, которая получает значение .

Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP/2000: Этот параметр не поддерживается.

SPI_SETHUNGAPPTIMEOUT
0x0079
Устанавливает время ожидания завислого приложения в значение параметра uiParam . Это значение представляет собой количество миллисекундах, в которые поток может идти без отправки сообщения, прежде чем система сочтет его неотвеченным.

Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP/2000: Этот параметр не поддерживается.

SPI_SETWAITTOKILLTIMEOUT
0x007B
Устанавливает время ожидания запроса завершения работы приложения в значение параметра uiParam . Это значение представляет собой количество миллисекундах, которое система ожидает перед завершением работы приложения, которое не отвечает на запрос на завершение работы.

Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP/2000: Этот параметр не поддерживается.

SPI_SETWAITTOKILLSERVICETIMEOUT
0x007D
Устанавливает время ожидания запроса завершения работы службы в значение параметра uiParam . Это значение представляет собой количество миллисекундах, которое система ожидает перед завершением службы, которая не отвечает на запрос на завершение работы.

Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP/2000: Этот параметр не поддерживается.

 

Ниже приведены эффекты пользовательского интерфейса. Значение SPI_SETUIEFFECTS используется для одновременного включения или отключения всех эффектов пользовательского интерфейса. Эта таблица содержит полный список значений эффектов пользовательского интерфейса.

Параметр эффектов пользовательского интерфейса Значение
SPI_GETCOMBOBOXANIMATION
0x1004
Определяет, включен ли эффект открытия слайда для полей со списком. Параметр pvParam должен указывать на переменную BOOL , которая получает значение TRUE для параметра enabled или FALSE для отключенного.
SPI_GETCURSORSHADOW
0x101A
Определяет, есть ли вокруг курсора тень. Параметр pvParam должен указывать на переменную BOOL , которая получает значение TRUE , если тень включена, и FALSE , если она отключена. Этот эффект появляется только в том случае, если глубина цвета системы превышает 256 цветов.
SPI_GETGRADIENTCAPTIONS
0x1008
Определяет, включен ли эффект градиента для строк заголовков окна. Параметр pvParam должен указывать на переменную BOOL , которая получает значение TRUE для параметра enabled или FALSE для отключенного. Дополнительные сведения о эффекте градиента см. в разделе Функция GetSysColor .
SPI_GETHOTTRACKING
0x100E
Определяет, включено ли горячее отслеживание элементов пользовательского интерфейса, например имен меню в строках меню. Параметр pvParam должен указывать на переменную BOOL , которая получает значение TRUE для параметра enabled или FALSE для отключенного.

Горячее отслеживание означает, что при перемещении курсора над элементом он выделяется, но не выбирается. Вы можете запросить это значение, чтобы решить, следует ли использовать горячее отслеживание в пользовательском интерфейсе приложения.

SPI_GETLISTBOXSMOOTHSCROLLING
0x1006
Определяет, включен ли эффект плавной прокрутки для списков. Параметр pvParam должен указывать на переменную BOOL , которая получает значение TRUE для параметра enabled или FALSE для отключенного.
SPI_GETMENUANIMATION
0x1002
Определяет, включена ли функция анимации меню. Этот главный переключатель должен быть включен, чтобы включить эффекты анимации меню. Параметр pvParam должен указывать на переменную BOOL , которая получает значение TRUE , если анимация включена, и FALSE , если она отключена.

Если анимация включена, SPI_GETMENUFADE указывает, используется ли в меню анимация затухания или слайдов.

SPI_GETMENUUNDERLINES
0x100A
То же, что и SPI_GETKEYBOARDCUES.
SPI_GETSELECTIONFADE
0x1014
Определяет, включен ли эффект затухания выделения. Параметр pvParam должен указывать на переменную BOOL , которая получает значение TRUE , если она включена, или FALSE , если она отключена.

Эффект затухания выделения приводит к тому, что элемент меню, выбранный пользователем, ненадолго остается на экране, а затем исчезает после закрытия меню.

SPI_GETTOOLTIPANIMATION
0x1016
Определяет, включена ли анимация подсказки. Параметр pvParam должен указывать на переменную BOOL , которая получает значение TRUE , если она включена, или FALSE , если она отключена. Если анимация подсказки включена, SPI_GETTOOLTIPFADE указывает, используется ли анимация всплывающих подсказок или анимация слайдов.
SPI_GETTOOLTIPFADE
0x1018
Если SPI_SETTOOLTIPANIMATION включен, SPI_GETTOOLTIPFADE указывает, используется ли анимация подсказки эффект затухания или эффект слайда. Параметр pvParam должен указывать на переменную BOOL , которая получает значение TRUE для анимации затухания или FALSE для анимации слайдов. Дополнительные сведения о эффектах слайда и затухания см. в разделе AnimateWindow.
SPI_GETUIEFFECTS
0x103E
Определяет, включены или отключены эффекты пользовательского интерфейса. Параметр pvParam должен указывать на переменную BOOL , которая получает значение TRUE , если включены все эффекты пользовательского интерфейса, или FALSE , если они отключены.
SPI_SETCOMBOBOXANIMATION
0x1005
Включает или отключает эффект открытия слайда для полей со списком. Задайте для параметра pvParam значение TRUE , чтобы включить эффект градиента, или FALSE , чтобы отключить его.
SPI_SETCURSORSHADOW
0x101B
Включает или отключает тень вокруг курсора. Параметр pvParam является переменной BOOL . Присвойте pvParam значение TRUE , чтобы включить тень или FALSE , чтобы отключить тень. Этот эффект появляется только в том случае, если глубина цвета системы превышает 256 цветов.
SPI_SETGRADIENTCAPTIONS
0x1009
Включает или отключает эффект градиента для строк заголовка окна. Задайте параметру pvParamзначение TRUE , чтобы включить его, или FALSE , чтобы отключить его. Эффект градиента возможен, только если глубина цвета системы превышает 256 цветов. Дополнительные сведения о эффекте градиента см. в разделе Функция GetSysColor .
SPI_SETHOTTRACKING
0x100F
Включает или отключает горячее отслеживание элементов пользовательского интерфейса, таких как имена меню в строках меню. Задайте параметру pvParamзначение TRUE , чтобы включить его, или FALSE , чтобы отключить его.

Горячее отслеживание означает, что при перемещении курсора над элементом он выделяется, но не выбирается.

SPI_SETLISTBOXSMOOTHSCROLLING
0x1007
Включает или отключает эффект плавной прокрутки для списков. Задайте параметру pvParamзначение TRUE , чтобы включить эффект плавной прокрутки, или FALSE , чтобы отключить его.
SPI_SETMENUANIMATION
0x1003
Включает или отключает анимацию меню. Этот главный переключатель должен быть включен для любой анимации меню. Параметр pvParam является переменной BOOL ; Установите для параметра pvParam значение TRUE , чтобы включить анимацию, и FALSE , чтобы отключить анимацию.

Если анимация включена, SPI_GETMENUFADE указывает, используется ли в меню анимация затухания или слайдов.

SPI_SETMENUUNDERLINES
0x100B
То же, что и SPI_SETKEYBOARDCUES.
SPI_SETSELECTIONFADE
0x1015
Установите для параметра pvParam значение TRUE , чтобы включить эффект затухания выделения, или ЗНАЧЕНИЕ FALSE , чтобы отключить его.

Эффект затухания выделения приводит к тому, что элемент меню, выбранный пользователем, ненадолго остается на экране, а затем исчезает после закрытия меню. Эффект затухания выделения возможен только в том случае, если глубина цвета системы превышает 256 цветов.

SPI_SETTOOLTIPANIMATION
0x1017
Установите для pvParam значение TRUE , чтобы включить анимацию подсказки, или FALSE , чтобы отключить ее. Если этот параметр включен, можно использовать SPI_SETTOOLTIPFADE для указания анимации затухания или слайдов.
SPI_SETTOOLTIPFADE
0x1019
Если флаг SPI_SETTOOLTIPANIMATION включен, используйте SPI_SETTOOLTIPFADE , чтобы указать, использует ли анимация подсказки эффект затухания или эффект слайда. Задайте для pvParam значение TRUE для анимации затухания или FALSE для анимации слайдов. Эффект затухания подсказки возможен только в том случае, если глубина цвета системы превышает 256 цветов. Дополнительные сведения о эффектах слайда и затухания см. в разделе Функция AnimateWindow .
SPI_SETUIEFFECTS
0x103F
Включает или отключает эффекты пользовательского интерфейса. Задайте параметру pvParam значение TRUE , чтобы включить все эффекты пользовательского интерфейса, или FALSE , чтобы отключить все эффекты пользовательского интерфейса.
 

Ниже приведены параметры окна.

Параметр Window Значение
SPI_GETACTIVEWINDOWTRACKING
0x1000
Определяет, включена или выключена активная функция отслеживания окна (активация окна, включаемого мышью). Параметр pvParam должен указывать на переменную BOOL , которая получает значение TRUE для параметра on или FALSE для параметра off.
SPI_GETACTIVEWNDTRKZORDER
0x100C
Определяет, будут ли окна, активированные с помощью активного отслеживания окон, быть перенесены в верхнюю часть. Параметр pvParam должен указывать на переменную BOOL , которая получает значение TRUE для параметра on или FALSE для параметра off.
SPI_GETACTIVEWNDTRKTIMEOUT
0x2002
Извлекает активную задержку отслеживания окна в миллисекундах. Параметр pvParam должен указывать на переменную DWORD , которая получает время.
SPI_GETANIMATION
0x0048
Извлекает эффекты анимации, связанные с действиями пользователя. Параметр pvParam должен указывать на структуру ANIMATIONINFO , которая получает сведения. Присвойте элементу cbSize этой структуры и параметру uiParam значение sizeof(ANIMATIONINFO).
SPI_GETBORDER
0x0005
Извлекает коэффициент мультипликатора границы, определяющий ширину границы размера окна. Параметр pvParam должен указывать на целочисленную переменную, которая получает это значение.
SPI_GETCARETWIDTH
0x2006
Извлекает ширину курсора в элементах управления редактированием в пикселях. Параметр pvParam должен указывать на переменную DWORD , которая получает это значение.
SPI_GETDOCKMOVING
0x0090
Определяет, закреплено ли окно при перемещении в верхнюю, левую или правую границу монитора или массива монитора. Параметр pvParam должен указывать на переменную BOOL , которая получает значение TRUE , если этот параметр включен, или FALSE в противном случае.

Используйте SPI_GETWINARRANGING , чтобы определить, включено ли это поведение.

Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP/2000: Этот параметр не поддерживается.

SPI_GETDRAGFROMMAXIMIZE
0x008C
Определяет, восстанавливается ли развернутое окно при перетаскивании его заголовка. Параметр pvParam должен указывать на переменную BOOL , которая получает значение TRUE , если этот параметр включен, или FALSE в противном случае.

Используйте SPI_GETWINARRANGING , чтобы определить, включено ли это поведение.

Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP/2000: Этот параметр не поддерживается.

SPI_GETDRAGFULLWINDOWS
0x0026
Определяет, включено ли перетаскивание полных окон. Параметр pvParam должен указывать на переменную BOOL , которая получает значение TRUE , если этот параметр включен, или FALSE в противном случае.
SPI_GETFOREGROUNDFLASHCOUNT
0x2004
Извлекает количество случаев, когда SetForegroundWindow будет мигать кнопку панели задач при отклонении запроса на переключение переднего плана. Параметр pvParam должен указывать на переменную DWORD , которая получает значение .
SPI_GETFOREGROUNDLOCKTIMEOUT
0x2000
Извлекает время после ввода данных пользователем (в миллисекундах), в течение которого система не позволяет приложениям выходить на передний план. Параметр pvParam должен указывать на переменную DWORD , которая получает время.
SPI_GETMINIMIZEDMETRICS
0x002B
Извлекает метрики, связанные с свернутыми окнами. Параметр pvParam должен указывать на структуру MINIMIZEDMETRICS , которая получает сведения. Присвойте элементу cbSize этой структуры и параметру uiParam значение sizeof(MINIMIZEDMETRICS).
SPI_GETMOUSEDOCKTHRESHOLD
0x007E
Извлекает пороговое значение в пикселях, в котором активируется режим закрепления с помощью мыши для перетаскивания окна к краю монитора или массива мониторов. Пороговое значение по умолчанию — 1. Параметр pvParam должен указывать на переменную DWORD , которая получает значение .

Используйте SPI_GETWINARRANGING , чтобы определить, включено ли это поведение.

Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP/2000: Этот параметр не поддерживается.

SPI_GETMOUSEDRAGOUTTHRESHOLD
0x0084
Извлекает пороговое значение в пикселях, в котором поведение отстыковки активируется с помощью мыши для перетаскивания окна от края монитора или массива монитора к центру. Пороговое значение по умолчанию — 20.

Используйте SPI_GETWINARRANGING , чтобы определить, включено ли это поведение.

Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP/2000: Этот параметр не поддерживается.

SPI_GETMOUSESIDEMOVETHRESHOLD
0x0088
Извлекает пороговое значение в пикселях из верхней части монитора или массива монитора, где вертикально развернутое окно восстанавливается при перетаскивании с помощью мыши. Пороговое значение по умолчанию — 50.

Используйте SPI_GETWINARRANGING , чтобы определить, включено ли это поведение.

Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP/2000: Этот параметр не поддерживается.

SPI_GETNONCLIENTMETRICS
0x0029
Получает метрики, связанные с неклиентской областью несвернутого окна. Параметр pvParam должен указывать на структуру NONCLIENTMETRICS , которая получает сведения. Присвойте элементу cbSize этой структуры и параметру uiParam значение sizeof(NONCLIENTMETRICS).

Windows Server 2003 и Windows XP/2000: См. примечания для NONCLIENTMETRICS.

SPI_GETPENDOCKTHRESHOLD
0x0080
Извлекает пороговое значение в пикселях, при котором поведение закрепления активируется с помощью пера для перетаскивания окна к краю монитора или массива мониторов. Значение по умолчанию равно 30.

Используйте SPI_GETWINARRANGING , чтобы определить, включено ли это поведение.

Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP/2000: Этот параметр не поддерживается.

SPI_GETPENDRAGOUTTHRESHOLD
0x0086
Извлекает пороговое значение в пикселях, где поведение отстыковки активируется с помощью пера для перетаскивания окна от края монитора или массива монитора к его центру. Пороговое значение по умолчанию — 30.

Используйте SPI_GETWINARRANGING , чтобы определить, включено ли это поведение.

Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP/2000: Этот параметр не поддерживается.

SPI_GETPENSIDEMOVETHRESHOLD
0x008A
Извлекает пороговое значение в пикселях из верхней части монитора или массива мониторов, где при перетаскивании с помощью мыши восстанавливается вертикально развернутое окно. Пороговое значение по умолчанию — 50.

Используйте SPI_GETWINARRANGING , чтобы определить, включено ли это поведение.

Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP/2000: Этот параметр не поддерживается.

SPI_GETSHOWIMEUI
0x006E
Определяет, отображается ли окно состояния IME (для каждого пользователя). Параметр pvParam должен указывать на переменную BOOL , которая получает значение TRUE , если окно состояния отображается, или FALSE , если это не так.
SPI_GETSNAPSIZING
0x008E
Определяет, развернуто ли окно по вертикали при его размере до верхней или нижней части монитора или массива монитора. Параметр pvParam должен указывать на переменную BOOL , которая получает значение TRUE , если этот параметр включен, или FALSE в противном случае.

Используйте SPI_GETWINARRANGING , чтобы определить, включено ли это поведение.

Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP/2000: Этот параметр не поддерживается.

SPI_GETWINARRANGING
0x0082
Определяет, включено ли упорядочение окон. Параметр pvParam должен указывать на переменную BOOL , которая получает значение TRUE , если этот параметр включен, или FALSE в противном случае.

Расположение окон сокращает количество взаимодействий мыши, пера или сенсорного ввода, необходимых для перемещения и размера окон верхнего уровня, упрощая поведение окна по умолчанию при перетаскивании или размере.

Следующие параметры извлекают отдельные параметры расположения окон:

SPI_GETDOCKMOVING
SPI_GETMOUSEDOCKTHRESHOLD
SPI_GETMOUSEDRAGOUTTHRESHOLD
SPI_GETMOUSESIDEMOVETHRESHOLD
SPI_GETPENDOCKTHRESHOLD
SPI_GETPENDRAGOUTTHRESHOLD
SPI_GETPENSIDEMOVETHRESHOLD
SPI_GETSNAPSIZING
Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP/2000: Этот параметр не поддерживается.
SPI_SETACTIVEWINDOWTRACKING
0x1001
Устанавливает активное отслеживание окна (активация окна, в котором находится мышь) как включено, так и отключено. Установите для параметра pvParamзначение TRUE для параметра on или FALSE для параметра off.
SPI_SETACTIVEWNDTRKZORDER
0x100D
Определяет, должны ли окна, активированные с помощью активного отслеживания окон, быть перенесены в верхнюю часть. Установите для параметра pvParamзначение TRUE для параметра on или FALSE для параметра off.
SPI_SETACTIVEWNDTRKTIMEOUT
0x2003
Задает задержку отслеживания активного окна. Установите значение pvParam в миллисекундах для задержки перед активацией окна под указателем мыши.
SPI_SETANIMATION
0x0049
Задает эффекты анимации, связанные с действиями пользователя. Параметр pvParam должен указывать на структуру ANIMATIONINFO , содержащую новые параметры. Присвойте элементу cbSize этой структуры и параметру uiParam значение sizeof(ANIMATIONINFO).
SPI_SETBORDER
0x0006
Задает коэффициент мультипликатора границы, определяющий ширину границы размера окна. Параметр uiParam указывает новое значение.
SPI_SETCARETWIDTH
0x2007
Задает ширину курсора в элементах управления редактированием. Задайте для параметра pvParam нужную ширину в пикселях. Минимальное значение по умолчанию — 1.
SPI_SETDOCKMOVING
0x0091
Задает, закрепляется ли окно при перемещении в верхнюю, левую или правую закрепления целевых объектов на мониторе или массиве монитора. Установите для параметра pvParamзначение TRUE для параметра on или FALSE для параметра off.

SPI_GETWINARRANGING должно иметь значение TRUE , чтобы включить такое поведение.

Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP/2000: Этот параметр не поддерживается.

SPI_SETDRAGFROMMAXIMIZE
0x008D
Задает, восстанавливается ли развернутое окно при перетаскивании его панели заголовков. Установите для параметра pvParamзначение TRUE для параметра on или FALSE для параметра off.

SPI_GETWINARRANGING должно иметь значение TRUE , чтобы включить такое поведение.

Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP/2000: Этот параметр не поддерживается.

SPI_SETDRAGFULLWINDOWS
0x0025
Устанавливает включение или отключение перетаскивания полных окон. Параметр uiParam задает значение TRUE для параметра on или FALSE для параметра off.
SPI_SETDRAGHEIGHT
0x004D
Задает высоту (в пикселях) прямоугольника, используемого для определения начала операции перетаскивания. Задайте для uiParam новое значение. Чтобы получить высоту перетаскивания, вызовите GetSystemMetrics с флагом SM_CYDRAG .
SPI_SETDRAGWIDTH
0x004C
Задает ширину (в пикселях) прямоугольника, используемого для определения начала операции перетаскивания. Задайте для uiParam новое значение. Чтобы получить ширину перетаскивания, вызовите Метод GetSystemMetrics с флагом SM_CXDRAG .
SPI_SETFOREGROUNDFLASHCOUNT
0x2005
Задает количество раз, когда SetForegroundWindow будет мигать кнопку панели задач при отклонении запроса на переключение переднего плана. Задайте параметру pvParam значение количества мигания.
SPI_SETFOREGROUNDLOCKTIMEOUT
0x2001
Задает время после ввода данных пользователем (в миллисекундах), в течение которого система не позволяет приложениям выходить на передний план. Задайте для параметра pvParam новое значение времени ожидания.

Вызывающий поток должен иметь возможность изменить окно переднего плана, в противном случае вызов завершается ошибкой.

SPI_SETMINIMIZEDMETRICS
0x002C
Задает метрики, связанные с свернутыми окнами. Параметр pvParam должен указывать на структуру MINIMIZEDMETRICS , содержащую новые параметры. Присвойте элементу cbSize этой структуры и параметру uiParam значение sizeof(MINIMIZEDMETRICS).
SPI_SETMOUSEDOCKTHRESHOLD
0x007F
Задает пороговое значение в пикселях, в котором активируется режим закрепления с помощью мыши для перетаскивания окна к краю монитора или массива мониторов. Пороговое значение по умолчанию — 1. Параметр pvParam должен указывать на переменную DWORD , содержащую новое значение.

SPI_GETWINARRANGING должно иметь значение TRUE , чтобы включить такое поведение.

Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP/2000: Этот параметр не поддерживается.

SPI_SETMOUSEDRAGOUTTHRESHOLD
0x0085
Задает пороговое значение в пикселях, при котором поведение отстыковки активируется с помощью мыши для перетаскивания окна от края монитора или массива мониторов к его центру. Пороговое значение по умолчанию — 20. Параметр pvParam должен указывать на переменную DWORD , содержащую новое значение.

SPI_GETWINARRANGING должно иметь значение TRUE , чтобы включить такое поведение.

Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP/2000: Этот параметр не поддерживается.

SPI_SETMOUSESIDEMOVETHRESHOLD
0x0089
Задает пороговое значение в пикселях от верхней части монитора, где при перетаскивании с помощью мыши восстанавливается вертикально развернутое окно. Пороговое значение по умолчанию — 50. Параметр pvParam должен указывать на переменную DWORD , содержащую новое значение.

SPI_GETWINARRANGING должно иметь значение TRUE , чтобы включить такое поведение.

Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP/2000: Этот параметр не поддерживается.

SPI_SETNONCLIENTMETRICS
0x002A
Задает метрики, связанные с неклиентной областью неминимированных окон. Параметр pvParam должен указывать на структуру NONCLIENTMETRICS , содержащую новые параметры. Присвойте элементу cbSize этой структуры и параметру uiParam значение sizeof(NONCLIENTMETRICS). Кроме того, элемент lfHeight структуры LOGFONT должен быть отрицательным значением.
SPI_SETPENDOCKTHRESHOLD
0x0081
Задает пороговое значение в пикселях, в котором активируется режим закрепления с помощью пера для перетаскивания окна к краю монитора или массива мониторов. Пороговое значение по умолчанию — 30. Параметр pvParam должен указывать на переменную DWORD , содержащую новое значение.

SPI_GETWINARRANGING должно иметь значение TRUE , чтобы включить такое поведение.

Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP/2000: Этот параметр не поддерживается.

SPI_SETPENDRAGOUTTHRESHOLD
0x0087
Задает пороговое значение в пикселях, при котором поведение отстыковки активируется с помощью пера для перетаскивания окна от края монитора или массива монитора к его центру. Пороговое значение по умолчанию — 30. Параметр pvParam должен указывать на переменную DWORD , содержащую новое значение.

SPI_GETWINARRANGING должно иметь значение TRUE , чтобы включить такое поведение.

Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP/2000: Этот параметр не поддерживается.

SPI_SETPENSIDEMOVETHRESHOLD
0x008B
Задает пороговое значение в пикселях от верхней части монитора, где при перетаскивании пером восстанавливается вертикально развернутое окно. Пороговое значение по умолчанию — 50. Параметр pvParam должен указывать на переменную DWORD , содержащую новое значение.

SPI_GETWINARRANGING должно иметь значение TRUE , чтобы включить такое поведение.

Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP/2000: Этот параметр не поддерживается.

SPI_SETSHOWIMEUI
0x006F
Задает, отображается ли окно состояния IME для каждого пользователя. Параметр uiParam задает значение TRUE для параметра on или FALSE для параметра off.
SPI_SETSNAPSIZING
0x008F
Задает, будет ли окно развернуто по вертикали, если оно имеет размер до верхней или нижней части монитора. Задайте для параметра pvParamзначение TRUE для параметра on или FALSE для параметра off.

SPI_GETWINARRANGING должно иметь значение TRUE , чтобы включить такое поведение.

Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP/2000: Этот параметр не поддерживается.

SPI_SETWINARRANGING
0x0083
Задает, включено ли упорядочение окон. Задайте для параметра pvParamзначение TRUE для параметра on или FALSE для параметра off.

Расположение окон сокращает количество взаимодействий мыши, пера или сенсорного ввода, необходимых для перемещения и изменения размера окон верхнего уровня, за счет упрощения поведения окна по умолчанию при перетаскивании или размере.

Следующие параметры задают параметры упорядочения отдельных окон:

SPI_SETDOCKMOVING
SPI_SETMOUSEDOCKTHRESHOLD
SPI_SETMOUSEDRAGOUTTHRESHOLD
SPI_SETMOUSESIDEMOVETHRESHOLD
SPI_SETPENDOCKTHRESHOLD
SPI_SETPENDRAGOUTTHRESHOLD
SPI_SETPENSIDEMOVETHRESHOLD
SPI_SETSNAPSIZING
Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP/2000: Этот параметр не поддерживается.

[in] uiParam

Тип: UINT

Параметр, использование и формат которого зависят от запрашиваемого или заданного системного параметра. Дополнительные сведения о параметрах для всей системы см. в разделе параметр uiAction . Если не указано иное, необходимо указать ноль для этого параметра.

[in, out] pvParam

Тип: PVOID

Параметр, использование и формат которого зависят от запрашиваемого или заданного системного параметра. Дополнительные сведения о параметрах для всей системы см. в разделе параметр uiAction . Если не указано иное, необходимо указать значение NULL для этого параметра. Сведения о типе данных PVOID см. в разделе Типы данных Windows.

[in] fWinIni

Тип: UINT

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

Этот параметр может быть равен нулю, если вы не хотите обновлять профиль пользователя или транслировать WM_SETTINGCHANGE сообщение, или он может иметь одно или несколько из следующих значений.

Значение Значение
SPIF_UPDATEINIFILE
Записывает новый параметр параметра для всей системы в профиль пользователя.
SPIF_SENDCHANGE
Передает сообщение WM_SETTINGCHANGE после обновления профиля пользователя.
SPIF_SENDWININICHANGE
То же, что и SPIF_SENDCHANGE.

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

Тип: BOOL

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

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

Комментарии

Эта функция предназначена для использования с приложениями, которые позволяют пользователю настраивать среду.

Имя раскладки клавиатуры должно быть производным от шестнадцатеричного значения идентификатора языка, соответствующего макету. Например, английский язык США имеет идентификатор языка 0x0409, поэтому основной макет для английского языка США называется "00000409". Варианты американского английского макета, такие как макет Дворжак, называются "00010409", "00020409" и т. д. Список идентификаторов основного языка и подязык, составляющих идентификатор языка, см. в макросе MAKELANGID .

Существует разница между цветовой схемой высокой контрастности и режимом высокой контрастности. Цветовая схема высокой контрастности изменяет системные цвета на цвета с очевидной контрастностью; Переключитесь на эту цветовую схему с помощью параметров отображения на панели управления. Режим высокой контрастности, в котором используются SPI_GETHIGHCONTRAST и SPI_SETHIGHCONTRAST, рекомендует приложениям изменять их внешний вид для пользователей с нарушениями зрения. Он включает в себя такие элементы, как звуковое предупреждение для пользователей и настраиваемая цветовая схема (с помощью параметров специальных возможностей на панели управления). Дополнительные сведения см. в разделе HIGHCONTRAST. Дополнительные сведения об общих специальных возможностях см. в разделе Специальные возможности.

Во время удерживания основной кнопки для активации функции мыши ClickLock пользователь может перемещать мышь. После блокировки основной кнопки освобождение основной кнопки не приводит к WM_LBUTTONUP сообщению. Таким образом, приложению будет казаться, что основная кнопка по-прежнему не работает. Любое последующее сообщение кнопки освобождает основную кнопку, отправляя WM_LBUTTONUP сообщение в приложение, поэтому кнопку можно разблокировать программным способом или с помощью пользователя, нажимающего любую кнопку.

Этот API не учитывает DPI и не должен использоваться, если вызывающий поток учитывает DPI для каждого монитора. Версию этого API с поддержкой DPI см. в разделе SystemParametersInfoForDPI. Дополнительные сведения об осведомленности о DPI см. в документации по Windows High DPI.

Примеры

В следующем примере используется SystemParametersInfo , чтобы удвоить скорость мыши.


#include <windows.h>
#include <stdio.h>
#pragma comment(lib, "user32.lib")    

void main()  
{     
    BOOL fResult;
    int aMouseInfo[3];    // Array for mouse information
    
    // Get the current mouse speed.         
    fResult = SystemParametersInfo(SPI_GETMOUSE,   // Get mouse information
                                   0,              // Not used
                                   &aMouseInfo,    // Holds mouse information
                                   0);             // Not used           
                                   
    // Double it.         
    if( fResult )     
    {
        aMouseInfo[2] = 2 * aMouseInfo[2];
        
        // Change the mouse speed to the new value.
        SystemParametersInfo(SPI_SETMOUSE,      // Set mouse information
                             0,                 // Not used
                             aMouseInfo,        // Mouse information
                             SPIF_SENDCHANGE);  // Update Win.ini
    }  
}

Примечание

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

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header winuser.h (включая Windows.h)
Библиотека User32.lib
DLL User32.dll
Набор API ext-ms-win-ntuser-sysparams-ext-l1-1-0 (представлено в Windows 8)

См. также раздел

ACCESSTIMEOUT

ANIMATIONINFO

AUDIODESCRIPTION

FILTERKEYS

HIGHCONTRAST

ICONMETRICS

LOGFONT

MAKELANGID

СВЕРНУТЫЕ МЕТРИКИ

КЛАВИШИ МЫШИ

НЕКЛИЕНТМЕТРИКИ

RECT

SERIALKEYS

SOUNDSENTRY

STICKYKEYS

SystemParametersInfoForDPI

КЛАВИШИ TOGGLEKEY

WM_SETTINGCHANGE

Типы данных Windows