1

我可以调用 Process.Start(filename.sln) 并使用该解决方案启动 VisualStudio。

但是使用带有 Verb="runas" 的 ProcessStartInfo 这样做,我得到了一个例外。即使使用 UseShellExecute=true。

有没有办法启动以管理员身份运行的应用程序,我将应用程序的数据文件传递给它并且没有 application.exe 文件名?

4

2 回答 2

0

找到了答案——当你以管理员身份运行时,你只能给它可执行文件,而不是让程序运行的应用程序。所以你必须通过 devenv.exe,而不是 filename.sln

于 2012-10-18T15:34:44.737 回答
0
ProcessStartInfo processInfo = new ProcessStartInfo(); //new process class
processInfo.Verb = "runas"; //wanna admin rights
processInfo.FileName = sDevPath + "devenv.exe"; //exe file path
processInfo.Arguments = sPrjPath + "mConverter.sln"; //sln file as argument
try
{
  Process.Start(processInfo); //try to start
}
catch (Win32Exception)
{
  //oops
}
于 2019-07-24T09:07:28.513 回答