日期:2014-05-19  浏览次数:20758 次

【求助】windows服务中调用winrar的问题!
Process   proc   =   new   Process();

proc.StartInfo.FileName   =AppDomain.CurrentDomain.BaseDirectory   +   @ "\WinRAR\WinRar.exe ";

proc.StartInfo.Arguments   =   "   a   -p "   +   strRarPsd   +   "   -ep   "   +   strNewRarFile   + "   "   +   strSrcFile;

proc.StartInfo.WindowStyle   =   ProcessWindowStyle.Hidden;
proc.Start();
proc.WaitForExit();

我在服务中调用下面的代码,winrar就一直运行,并且不能自动结束

不过如果不是在服务中调用,则没有问题

哪位遇到过这个问题吗?


------解决方案--------------------
程序运行后
先查找该rar进程存在否?
是:
直接kill该进程
------解决方案--------------------
WaitForExit()无参数用法是等待主进程结束之后再结束吧?你的服务一直运行着,怎么可能结束呢!
------解决方案--------------------
楼主可以使用 SharpZipLib 库来做压缩
而不要去调用winrar

http://www.cnblogs.com/ppp-213/archive/2007/03/07/666974.aspx
------解决方案--------------------
给大家介绍个技术群

大家一起学习,一起提高

32517994