在我的 winform 上添加一个按钮到 运行 截图工具应用程序

Add a button on my winform to run the Snipping Tool application

我正尝试通过单击我的 Winform 项目上的按钮来 运行 SnippingTool 应用程序。我试过分别使用下面这三个函数:

   private void button3_Click(object sender, EventArgs e)
        {
            Process SnippingTool = new Process();
            String FilePath = @"C:\WINDOWS\system32\SnippingTool.exe";
            SnippingTool.StartInfo.FileName = System.IO.Path.GetDirectoryName(FilePath);
            SnippingTool.StartInfo.Arguments = "SnippingTool.exe";
            SnippingTool.Start();
        }

    private void button3_Click(object sender, EventArgs e)
        {            System.Diagnostics.Process.Start("C:\WINDOWS\system32\SnippingTool.exe");
}

    private void button3_Click(object sender, EventArgs e)
        {            System.Diagnostics.Process.Start("C:\WINDOWS\system32\SnippingTool.exe");
}

但是没有任何效果。我总是收到两条错误消息。

或者使用第一个函数,它会打开 C:\WINDOWS\system32 文件夹而不启动应用程序。

你能帮忙吗?

试试这个:

 private void button1_Click(object sender, EventArgs e)
        {
            Process proc = new Process();
            proc.StartInfo.FileName = @"C:\WINDOWS\system32\SnippingTool.exe";
            proc.Start();
        }

对我有用...

好吧,试试这个:

private void button1_Click(object sender, EventArgs e)
        {
            Process proc = new Process();
            proc.StartInfo.FileName = @"C:\WINDOWS\system32\SnippingTool.exe";
            proc.StartInfo.UserName = "Your Username";
            proc.StartInfo.Password = "Your Password";
            proc.Start();
        }

将用户名和密码添加到您的进程信息中

您可能只是为您的环境调用了错误的 exe。 尝试

        Process snippingToolProcess = new Process();
        snippingToolProcess.EnableRaisingEvents = true;
        if (!Environment.Is64BitProcess)
        {
            snippingToolProcess.StartInfo.FileName = "C:\Windows\sysnative\SnippingTool.exe";
            snippingToolProcess.Start(); 
        }
        else
        {
            snippingToolProcess.StartInfo.FileName = "C:\Windows\system32\SnippingTool.exe";
            snippingToolProcess.Start();            
        }