System.IO.FileNotFoundException在用户计算机上运行时找不到引用

时间:2014-06-07 13:56:41

标签: c# dotnetzip

我正在使用Visual Studio Express 2013在C#中创建一个程序。我正在使用Ionic.zip(dotnetzip)。当我从... / bin / release目录或Visual Studio运行它时,它运行得非常好。当最终用户在他们的计算机上拥有它,或者我从另一个位置运行它时,当它尝试使用ionic.zip执行操作时,它会崩溃并出现以下异常

System.IO.FileNotFoundException: Could not load file or assembly 'Ionic.Zip, Version=1.9.1.8, Culture=neutral, PublicKeyToken=edbe51ad942a3f5c' or one of its dependencies. The system cannot find the file specified.
File name: 'Ionic.Zip, Version=1.9.1.8, Culture=neutral, PublicKeyToken=edbe51ad942a3f5c'

我完全不知道如何解决这个问题,过去3天一直在研究如何取得成功。任何帮助将不胜感激。

谢谢, 詹姆斯

3 个答案:

答案 0 :(得分:1)

CHeck依赖项 - 直接或可能未安装的框架引用。如果程序集在搜索路径中,则应该找到它。

答案 1 :(得分:0)

首先在其资源中包含该资源中的文件:

  • 选择构建操作 - >含量
  • 复制到输出目录 - >如果更新则复制

enter image description here

我正在附上一张照片。现在,您可以按如下方式访问其正确的路径:

System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase) + "\\Resources\\yourfile.exe";

答案 2 :(得分:0)

您需要安装程序或脚本将DLL复制到执行目录(可执行文件所在的目录)或者复制到计算机PATH中。