如何通过 C# 中的按钮单击事件以编程方式启动 dsa.msc?

How can you launch dsa.msc programmatically through a button click event in C#?

我正在尝试使用应用程序上的按钮打开 Active Directory。我不想从 AD 或在 AD 中获取或设置信息,只需打开它即可。下面的代码给出了错误:Exception thrown: 'System.ComponentModel.Win32Exception' in System.dll,这不是很有帮助。有什么想法吗?

private void btnAD_Click(object sender, EventArgs e)
    {
        try
        {
            Process procAD = new Process();
            procAD.StartInfo.FileName = "C:\Windows\System32\dsa.msc";
            procAD.Start();
        }
        catch
        {
            Console.WriteLine("Didn't open...");
        }
    }

有几种方法。我建议您实际启动 mmc.exe 可执行文件并将 msc 文件作为参数提供给它。例如:

Process procAD = new Process();
procAD.StartInfo.FileName = "C:\Windows\System32\mmc.exe";
procAD.StartInfo.Arguments = "C:\Windows\System32\dsa.msc";
procAD.Start();

您应该也可以这样做,这与双击文件相同:

System.Diagnostics.Process.Start("C:\Windows\System32\dsa.msc");