c#咋判断一个程序运行后关闭( 二 )
如果觉得哪里看不懂,说明你基础知识不过关。还是先看看多线程啥的,搞明白了图形界面就好弄了。不然各种稀奇古怪的错误就出来了,你都不知道啥原因。
看了各位的评论,原来还可以注册一个完成事件,这下连多余的线程也不用开了。private void Button_Click(object sender, RoutedEventArgs e) { var inputString = InputBox.Text; if (string.IsNullOrWhiteSpace(inputString)) { return; } var words = inputString.Split(\u0026#39; \u0026#39;); var processName = words; var processArgs = string.Join(" ", words.Skip(1)); var process = new Process(); process.StartInfo.FileName = processName; process.StartInfo.Arguments = processArgs; process.EnableRaisingEvents = true; process.Exited += Process_Finish; process.Start(); } private void Process_Finish(object sender, EventArgs e) { { MessageBox.Show("程序已停止", "程序已停止"); } }如果要判断其他程序是否运行,我不清楚你其他程序在哪里定义的。如果只是要判断是否在运行到时也好办。Process类也提供了相应方法,调用一下就行了。 private void Button_Click(object sender, RoutedEventArgs e) { var inputString = InputBox.Text; int pid = Convert.ToInt32(inputString); try { var process = Process.GetProcessById(pid); if (process.HasExited) { MessageBox.Show("程序已停止", "程序已停止"); } else { MessageBox.Show("程序还在运行", "程序还在运行"); } } catch (Exception ex) { MessageBox.Show("不存在该程序", "不存在该程序"); } }
推荐阅读
- 同比■同比增长7.1%!2021年的第一个节你花了多少钱?
- “他是我第一个会说普通话的老师”:一对师生折射青海山村蝶变
- 有必要重新开个C店吗
- 招聘都要学历,何来程序员不看学历
- 银行系统的研发岗(程序员)是不是很难进(校招)推广到国企的研发岗(程序员)呢
- 大学再有三个月就结束了,没学到知识,参加一个软件测试培训机构好吗
- 汽车|长安UNI-K又将开创一个新的"引力"纪元?
- 神话|武汉传奇父亲:一个平行班孩子创造的高考神话(感动上万家长)
- 坐标合肥,请问在哪里能捕捉到程序员这种生物他们大都出现在哪里呢
- 王者荣耀李白能不能出肉
