Проблема все в названии.Я пытаюсь зарегистрировать задачу для запуска в планировщике системных задач.Когда я комментирую эту часть своего кода:
HRESULT hr = taskDefinition->get_Principal(&taskSecuritySettings);
if (SUCCEEDED(hr))
hr = taskSecuritySettings->put_RunLevel(TASK_RUNLEVEL_HIGHEST);
Регистрация задачи работает как ожидалось.Если я раскомментирую его, произойдет сбой с ошибкой «Доступ запрещен».Вот код для регистрации задачи:
const HRESULT hr = taskFolder->RegisterTaskDefinition(
_bstr_t(defaultTaskName), taskDefinition,
TASK_CREATE_OR_UPDATE, username, password,
logonType,
_variant_t(L""),
registeredTask
);
, где тип входа обычно TASK_LOGON_INTERACTIVE_TOKEN_OR_PASSWORD.Изменение его на TASK_LOGON_PASSWORD или TASK_LOGON_INTERACTIVE_TOKEN ничего не изменило.
Предоставляемый мною пользователь / пароль является локальным администратором.Использование учетной записи администратора дает те же результаты.Отсутствие имени пользователя / пароля и TASK_LOGON_NONE дают одинаковые результаты.
Есть идеи?