不同用户的System.Diagnostics.Process.Start异常

时间:2019-05-04 08:02:13

标签: c# exe

我创建了一个带有按钮的exe应用程序,单击该按钮将执行以下代码。当用于创建exe的同一用户单击时,它可以正常工作。但是当其他用户单击相同的exe时,其异常消息为"Application not found"。堆栈跟踪也如下所示。

        try
        {                
            System.Diagnostics.Process.Start("https://google.com");
        } catch(Exception ex)
        {
            MessageBox.Show(ex.Message);
        }

例外:

    Exception Info: System.ComponentModel.Win32Exception
   at System.Diagnostics.Process.StartWithShellExecuteEx(System.Diagnostics.ProcessStartInfo)
   at System.Diagnostics.Process.Start(System.Diagnostics.ProcessStartInfo)
   at MyTool.MainWindow.MyButton_Click(System.Object, System.Windows.RoutedEventArgs)

2 个答案:

答案 0 :(得分:1)

也许其他正在运行.exe的用户没有默认的浏览器或应用程序来运行此命令。如果在运行(Windows + R)中执行命令并遇到错误,则可以验证我的理论。

答案 1 :(得分:0)

您正在尝试启动名为“ https://google.com”的应用程序。您需要使用参数作为URL启动Web浏览器应用程序:

System.Diagnostics.Process.Start("chrome.exe", "https://google.com");

或使用其他应用程序名称。