#c# #.net #.net-core #windows-services #admin
Вопрос:
Я пытаюсь открыть некоторые приложения .net core (с правами администратора в app.manifest) как администратор из автоматического .Служба Net Windows, которая запускается при запуске.
Когда я просто вхожу в систему и запускаю службу, она работает нормально, но если я настрою службу на автоматический запуск при запуске, то при перезапуске для ее тестирования в моих журналах появляется следующая ошибка: «Ошибка: запрошенная операция требует повышения», это происходит после запуска
myProcess.StartAsActiveUser()
в качестве исключения из улова try.
Я добавил права администратора в app.manifest, использовал глагол runas и превратил UseShellExecute в true… И когда я регистрирую
principal.IsInRole(WindowsBuiltInRole.Administrator);
при запуске службы для него установлено значение true, поэтому фактический пользователь имеет роль администратора…
Есть идеи, как заставить его работать администратором при автоматическом запуске?
Комментарии:
1. Он не должен начинаться с учетных данных администратора..
2. @alexherm да, в том-то и дело. Но есть ли какой-нибудь способ заставить это работать, зная все то, что я уже пытался сделать, чтобы это началось с администратора? Можно ли запустить процесс от имени администратора, не зная ключей администратора или не будучи зарегистрированным, так как автоматические службы запускаются при запуске?