Функция SetSystemTimeAdjustment - Windows - PullRequest
1 голос
/ 15 января 2011

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

Я обновил свои «Права пользователя» в Windows для работы в качестве ОС и настройки системного времени для включения администраторов, пользователей, но явсе равно получаю ошибку.

Вот пример кода (не фактический, но похожий): http://winterdom.com/dev/security/tokens

1 Ответ

3 голосов
/ 15 января 2011

Код ошибки 1314 ясно показывает, что вы не активируете привилегию SE_SYSTEMTIME_NAME, необходимую для успешной работы функции SetSystemTimeAdjustment .Пример того, как включить привилегию, вы можете найти, например, здесь .

Еще один совет.Если вы начинаете как администратор Process Explorer , вы можете проверить, какие привилегии есть у каждого процесса (вам нужен SeSystemtimePrivilege), а какие из привилегий в настоящее время включены или отключены.

Чтобы убедиться, чтоу вас никогда не будет проблем с UAC, вы должны включить в свою программу в качестве ресурса UAC Manifest , имеющий

<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />

или

<requestedExecutionLevel  level="highestAvailable" uiAccess="false" />

Зависит от версииVisual Studio, которую вы используете, может быть только из настроек проекта («Linker» / «Файл манифеста», «Уровень выполнения UAC»)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...