Проблема с «правами» При запуске программы из другой программы в Windows с помощью .Net Process.Start () - PullRequest
0 голосов
/ 31 марта 2012

Я использую программу, чтобы увидеть, не сработало ли мое приложение, и в этом случае я запускаю ее снова. Давайте назовем это приложение B, в то время как основное приложение называется A.

Основная проблема возникает, когда приложение A запускается из B.

Кажется, есть проблемы с правами для выполнения этого кода:

var processInfo = new ProcessStartInfo("myfile.bat")
                              {CreateNoWindow = true, UseShellExecute = false};
        processInfo.Verb = "runas";
        var process1 = Process.Start(processInfo);
        process1.WaitForExit();
        process1.Close();

У меня есть эта проблема на Win Xp и 7. Я пытался выполнить Приложение B с «Выполнить от имени администратора» тоже безрезультатно.

Это кажется проблемой с правами, потому что, если я запускаю программу без Приложения B, она работает без проблем.

1 Ответ

2 голосов
/ 31 марта 2012

Попробуйте установить UseShellExecute = true.

Я не знаю, квалифицируются ли файлы 'bat' как исполняемые.
А в документах говорится, что только когда исполняемый файл может быть запущен, когда UseShellExecute имеет значение false

...