Поделиться через


Функция AccSetRunningUtilityState (oleacc.h)

Задает системные значения, указывающие, влияет ли текущее состояние приложения со специальными возможностями (AT) на функциональность, которая обычно предоставляется системой.

Синтаксис

HRESULT AccSetRunningUtilityState(
  [in] HWND  hwndApp,
  [in] DWORD dwUtilityStateMask,
  [in] DWORD dwUtilityState
);

Параметры

[in] hwndApp

Тип: HWND

Дескриптор окна приложения AT. Этот параметр не должен иметь значение NULL.

[in] dwUtilityStateMask

Тип: DWORD

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

ANRUS_ON_SCREEN_KEYBOARD_ACTIVE

ANRUS_TOUCH_MODIFICATION_ACTIVE

ANRUS_PRIORITY_AUDIO_ACTIVE

ANRUS_PRIORITY_AUDIO_ACTIVE_NODUCK

[in] dwUtilityState

Тип: DWORD

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

Значение Значение
ANRUS_ON_SCREEN_KEYBOARD_ACTIVE
0x0000001
Приложение AT предоставляет экранную клавиатуру.
ANRUS_TOUCH_MODIFICATION_ACTIVE
0x0000002
Приложение AT использует перенаправленный сенсорный ввод.
ANRUS_PRIORITY_AUDIO_ACTIVE
0x0000004
Приложение AT полагается на звук (например, преобразование текста в речь) для передачи пользователю важной информации и должно оставаться слышимым по сравнению с другими системными звуками.
ANRUS_PRIORITY_AUDIO_ACTIVE_NODUCK
0x0000008
Приложение AT полагается на звук (например, преобразование текста в речь) для передачи пользователю важной информации, но не должно изменяться относительно других системных звуков.

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

Тип: STDAPI

Возвращает значение S_OK, если операция завершилась успешно.

В случае успеха возвращает стандартный код ошибки COM.

Комментарии

Перед выходом приложение AT должно сбросить все системные значения, заданные ранее.

Для этой функции требуется, чтобы вызывающий процесс был иметь права UIAccess или более высокие привилегии. Если у вызывающего объекта нет необходимых привилегий, вызов AccSetRunningUtilityState завершается ошибкой и возвращает E_ACCESSDENIED. Дополнительные сведения см. в разделах Вопросы безопасности для специальных возможностей и /MANIFESTUAC (внедрение сведений UAC в манифест).

Примеры

В этом примере кода показано, как вызвать функцию AccSetRunningUtilityState .

if (SUCCEEDED(hr))
{
    // Tell the system that an AT application has registered with the 
    // touch redirector.
    hr = AccSetRunningUtilityState(hwndTouchWindow, 
            ANRUS_TOUCH_MODIFICATION_ACTIVE, 
            ANRUS_TOUCH_MODIFICATION_ACTIVE);
    if (FAILED(hr))
    {
        MyErrorHandler(hr); // Application-defined error handler
    }
}

Требования

Требование Значение
Минимальная версия клиента Windows 8 [только классические приложения]
Минимальная версия сервера Windows Server 2012 [только классические приложения]
Целевая платформа Windows
Header oleacc.h
Библиотека Oleacc.lib
DLL Oleacc.dll

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

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