Я хочу запустить свою функцию в ограниченной учетной записи с правами администратора
Я хочу, чтобы моя программа запускалась под ограниченной учетной записью пользователя, но с правами администратора в Windows XP.
Я не могу найти ответ. Я думаю, что могу использовать два способа:
- Запустите мою программу другим способом, например, программой или службой
- Запустите мою функцию с помощью некоторого метода, такого как PrincipalPermission space или что-то вроде этого
Но я не могу решить эту проблему.
3 ответа
Один из способов решить эту проблему - разбить вашу программу на две части. Одна часть как служба Windows, а другая как приложение пользователя. Вы можете настроить службу для работы в качестве сетевой службы, локальной службы или локальной системы в зависимости от требуемого уровня доступа. Все, что требует прав администратора, будет выполнено службой Windows. Пользовательское приложение может отвечать за отображение пользовательского интерфейса и других подобных вещей. Для этого вам также необходимо иметь своего рода IPC (межпроцессное взаимодействие) между вашими приложениями.
Вы смотрели на команду "runas"? Например:
C:\> runas /noprofile /netonly /user:MYCOMPUTER\testuser "C:\Program Files\My Special Program\Program.exe"
Я хочу запустить свою программу под ограниченной учетной записью пользователя, но с правами администратора.
Это не может быть сделано. Пользователь с ограниченными правами не имеет прав администратора. Вы должны запустить его как пользователь с правами администратора, например, runas.