Process.Start(ProcessStartInfo) 调用的程序退不出去??

xiaozhimin1978 2005-03-25 11:33:34
我用Process.Start(ProcessStartInfo) 方法启动一个外部的控制台应用程序,那个应用程序对一个文件进行压缩,压缩完成之后退出:

ProcessStartInfo info = new ProcessStartInfo(Command, parameter);
info.WindowStyle = ProcessWindowStyle.Hidden;
Process process = Process.Start(info);

但是我发现在被调用的进程完成任务之后,在任务管理器中发现那个进程还没有退出,不知是怎么回事?
...全文
411 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
Bob 2005-03-27
  • 打赏
  • 举报
回复
是不是RAR.exe?
你看看在命令行执行相同的操作,完成后它会不会自己关闭?
如果不会的话,可能要对RAR加入一些命令行参数。
xiaozhimin1978 2005-03-27
  • 打赏
  • 举报
回复
不能杀死进程的,因为程序里无法知道这个进程的工作是否已经完成了。解压缩之后的文件有多少,每个文件的大小都是不可知的。如果在程序中杀死进程的话可能会造成文件解压不完全。

另外,我用的不是rar.exe,用的是 cabarc.exe
haibuo1981 2005-03-26
  • 打赏
  • 举报
回复
完成任务后调用kill方法关掉进程

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧