C# Winform 启动和停止进程

启动和停止进程

一、启动进程

方法1:

(1)       创建一个Process组件的实例,例如:

Process myProcess = new Process();

(2)       设置其对应的StartInfo属性,指定要运行的应用程序名以及传递的参数:

myProcess.StartInfo.FileName = “文件名”;

process1.StartInfo.Arguments=”参数”;

如果该进程带有图形用户界面,也可以指定图形用户界面的打开方式。

例如:

myProcess.StartInfo.WindowStyle = ProcessWindowStyle.Normal;

(3)       调用该实例的Start方法启动该进程。

方法2:

     直接调用Process类提供的静态方法启动进程。

二、停止进程

通过两种方法利用Process组件停止进程。

(1)       如果进程有图形界面,调用CloseMainWindow方法。

(2)       如果进程没有用户界面,调用进程的Kill方法。

  

不论有没有图形用户界面,如果希望强行让其退出,在权限一允许的情况下,均可以调用Kill方法终止该进程。

 

 

下面举出一个实例,启动、停止和观察Notepad++进程。

(1)       用ListView显示“记事本”进程信息。

(2)       用Process类提供的静态方法启动进程。

(3)       终止进程时,把所有“记事本”进程全部终止。

 

 

 

using System;

using System.Collections.Generic

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
C# WinForm启动脚本可以通过调用cmd命令来实现。下面是一个示例代码,演示了如何在C# WinForm启动脚本: ```csharp using System; using System.Diagnostics; using System.Windows.Forms; namespace WinFormApp { public partial class MainForm : Form { public MainForm() { InitializeComponent(); } private void btnRunScript_Click(object sender, EventArgs e) { string scriptPath = "C:\\path\\to\\script.bat"; // 替换为你的脚本路径 ProcessStartInfo startInfo = new ProcessStartInfo(); startInfo.FileName = "cmd.exe"; startInfo.Arguments = "/c " + scriptPath; startInfo.RedirectStandardOutput = true; startInfo.UseShellExecute = false; startInfo.CreateNoWindow = true; Process process = new Process(); process.StartInfo = startInfo; process.OutputDataReceived += Process_OutputDataReceived; process.Start(); process.BeginOutputReadLine(); process.WaitForExit(); } private void Process_OutputDataReceived(object sender, DataReceivedEventArgs e) { if (!string.IsNullOrEmpty(e.Data)) { // 处理输出结果 // 例如,将输出结果显示在文本框中 textBoxOutput.Invoke((MethodInvoker)delegate { textBoxOutput.AppendText(e.Data + Environment.NewLine); }); } } } } ``` 上述代码中,我们首先指定了要执行的脚本路径,然后创建了一个`ProcessStartInfo`对象,设置了要启动进程为`cmd.exe`,并指定了要执行的脚本路径作为参数。接下来,我们创建了一个`Process`对象,将`ProcessStartInfo`对象赋值给它,并注册了一个事件处理程序来处理输出结果。最后,我们启动进程,并等待进程执行完毕。 在`Process_OutputDataReceived`事件处理程序中,我们可以处理脚本的输出结果。在示例代码中,我们将输出结果显示在一个文本框中,你可以根据自己的需求进行处理。 请注意,为了能够在WinForm中显示输出结果,我们使用了`Invoke`方法来确保在UI线程上执行更新操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值