Перезагрузка программы без прав

По какой-то причине моей программе на C # необходимо перезапустить с повышенными привилегиями. Для этого я использую следующий код:

private static void RestartForPermissionsFix()
{
    ProcessStartInfo processInfo = new ProcessStartInfo();
    processInfo.Verb = "runas";
    processInfo.FileName = Assembly.GetExecutingAssembly().Location;

    Process.Start(processInfo);
}

Это отлично работает.

После того, как я «исправлю свои привилегии», я хочу перезапустить программу без повышенных прав . Я пробовал то же, что и выше, без "рун", но не работает. Я предполагаю, что процесс, запускаемый с повышенного уровня, автоматически становится повышенным. Есть идеи?

7
задан Sven 18 July 2011 в 17:09
поделиться