У меня есть служба Windows, которая использует ImpersonateLoggedOnUser
, чтобы отбросить системные разрешения и запустить другое приложение, используя права текущих пользователей.
Если вызов ImpersonateLoggedOnUser
не удалсяПриложение, выполняемое службой, должно иметь системные права, что не очень хорошо.Я исправил это, проверив возвращаемое значение.
Теперь я пытаюсь определить, возможно ли сделать этот вызов функции неудачным.
Есть ли такой случай, когда это может произойти, без изменения приложенияа без прав администратора?(и без исправления, конечно)
Если да, то как?
HANDLE hToken;
OpenProcessToken( hProcess, MAXIMUM_ALLOWED, &hToken );
ImpersonateLoggedOnUser( hToken );
[...]
Спасибо!