我想设计一个c#程序,它可以运行程序第三个exe应用程序,如WinRAR.程序将浏览文件,然后当用户单击按钮时,创建存档的过程将开始..!
我知道使用System.Diagnostics.Process.Start方法可以执行.exe文件.例如.
Process.Start(@"C:\path\to\file.zip");
GetFile(“文件名”,“打开winrar来执行文件”)我需要这样的东西.我想将文件名传递给第3个应用程序,而无需打开winrar.可能吗?我该怎么开始?任何参考/指导/解决方案都非常感谢.
非常感谢你.
//更新
下面是打开WinRAR.exe程序的代码,否则会出现错误消息.我在button_click中点击它并使用browse从txtDest.text接受文件.所以从这里开始,我想直接压缩,而不是打开文件.我尝试更改“RAR.exe”或“UNRAR.exe”,但它没有工作.这是正确的?
谢谢.
ProcessStartInfo startInfo = new ProcessStartInfo("WinRAR.exe"); startInfo.WindowStyle = ProcessWindowStyle.Maximized; startInfo.Arguments = txtDest.Text; try { // Start the process with the info we specified. using (Process exeProcess = Process.Start(startInfo)) { exeProcess.WaitForExit(); } } catch { MessageBox.Show("Error Open"); } }
解决方法
为此你可能想使用unrar.dll,它是由RarLabs分发的库,即制作Winrar的人.它包含作为COM接口公开的WinRAR的所有功能.我最近在一个项目中使用它,它非常好,公开了打开和浏览档案的方法,以及压缩和解压缩.
http://www.rarlab.com/rar_add.htm向下滚动到“适用于Windows软件开发人员的UnRAR.dll UnRAR动态库”.
它附带了一组非常好的示例,包括浏览存档和API文档.