C#DLL依赖于另一个dll

时间:2014-03-31 07:16:16

标签: c# .net visual-studio-2010 dll

我正在使用Microsoft Visual Studio 2010和C#制作项目。有了这个项目,我想生成一个.dll。

在我的项目中,我有itextsharp.dll的外部引用,当我尝试在另一台计算机上使用myproject.dll时,这会给我一个错误:

  

无法加载文件或程序集itextsharp ...

所以,任何人都知道如何解决这个问题?

3 个答案:

答案 0 :(得分:2)

只需将itextsharp.dll复制到myproject.dll

所在的文件夹即可

此外,这可以通过设置" Local Copy" to" true"的属性。因此,每次重建后,Visual Studio会自动将.dll文件复制到您当前项目的所有已编译的dll / exe文件附近。

答案 1 :(得分:0)

编辑web.config文件以删除引用,这不是正常操作所必需的:

1 - 打开站点根目录中的web.config / app.config文件

2 - 找到以下行并对其进行注释():xxxxx-是您的程序集名称。

<add assembly="xxxxx", Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>3 - Save and close the web.config file and try again

参考链接:http://manual.aspdotnetstorefront.com/p-1118-could-not-load-file-or-assembly-microsoftwebservices3-version3000-cultureneutral-publickeytoken31bf3856ad364e35.aspx

更新:

以上不起作用,你需要在新项目中引用itextsharp.dll。原因是。

itextsharp.dll - &GT; 0级(不依赖于其他dll)
Myprojet.dll - &gt;级别1(取决于itextsharp.dll)
消费App - &gt; 2级(取决于1级,2级)

构建消费应用程序后,您必须获取bin文件夹中的级别0,级别1 dll。因此,您必须添加itextSharp.dll作为参考。

答案 2 :(得分:0)

如果您在项目中添加了一个dll,而不是Microsoft内置的.dll,则必须将此.dll与您的应用程序一起复制/粘贴。它们必须在一起,因为从应用程序在应用程序所在的当前目录中搜索此.dll。