【问题标题】:Unzip a file from network从网络解压缩文件
【发布时间】:2013-10-16 07:40:21
【问题描述】:

我正在尝试使用以下语法从 C# 中的 netowrk 解压缩文件:

string dezarhiverPath = ConfigurationSettings.AppSettings["PathWinZip"] + "\\WINZIP32.EXE";
ProcessStartInfo pro = new ProcessStartInfo();
pro.WindowStyle = ProcessWindowStyle.Hidden;
pro.FileName = dezarhiverPath;
pro.Arguments = " -e -j -o " + prmSource + " " + prmDestination;
Process x = Process.Start(pro);
x.WaitForExit();

如果我使用这个 sintax 并且我的 zip 文件在我的计算机上的本地,它可以工作但是当我移动路径并且我试图从网络上的某个位置解压缩时不起作用。保留在“x.WaitForExit”行()"。如果我尝试手动解压缩它可以工作。我的用户有权访问此位置。我没有错误。

谁能帮我解决这个问题?

【问题讨论】:

  • 有人能告诉我参数 -e -j -o 是什么意思吗?
  • WindowStyle 设置为Normal 并查看窗口会发生什么。

标签: c# .net-4.0 desktop-application unzip winzip


【解决方案1】:

使用像SharpZipLib这样的外部工具解压,因为这样你就不需要依赖像winzip这样的外部工具了。

甚至更好:使用 .net 4.5 使用 System.IO.Compression.ZipFile,这是在程序集中 System.IO.Compression.FileSystem

例如见 MSDN 网站http://msdn.microsoft.com/en-us/library/ms404280(v=vs.110).aspx

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-09-05
    • 1970-01-01
    • 2011-11-10
    • 1970-01-01
    • 2013-03-09
    • 1970-01-01
    • 2010-12-14
    • 2011-01-23
    相关资源
    最近更新 更多