“权限”问题使用.Net Process.Start()从Windows中的另一个程序启动程序时

时间:2012-03-31 08:38:44

标签: .net windows process rights

我使用一个程序来查看我的应用程序是否崩溃,在这种情况下我再次启动它。让我们在主应用程序中调用此应用程序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 个答案:

答案 0 :(得分:2)

尝试设置UseShellExecute = true。

我不知道'bat'文件是否符合可执行文件的要求 并且文档说当UseShellExecute为false时,只能启动可执行文件。