2013-08-23 29 views
0

我有一些dll的问题。当我没有使用lib文件(我需要)制作dll时,一切都很好。但是,当我试图使用一些功能dll使用功能lib然后出现一些异常:在dll中使用lib for c#

System.DllNotFoundException, cant load a dll module (exception from HRESULT:0x8007007E). 

dll文件是在正确的位置。 P.S.使用Visual Studio 2010.

什么可能是错误的?

+0

所以你的意思是你正试图在lib文件中使用一些不存在的方法? –

回答

0

如果你正在创建一个新类,你应该引用默认的dll。 在你创建一个新的类库并想在你的代码中使用一个消息框的例子中,你应该首先在你的程序中引用那个需要的dll(我不是指你的dll,我的意思是dot net默认的dll,比如system.windows.forms ),然后添加使用的东西;在你的班级的顶部。

例如:我们希望在类库中使用messagebox,然后: 1.首先从解决方案资源管理器中右键单击项目>添加引用,现在引用管理器从左侧选项卡打开,然后单击程序集,然后查找并选择系统。现在Windows.Forms的 2.它的时间在我们的程序中使用它第一次在类文件

using System.Windows.Forms; //add this line in top of your class 

的最顶端添加此行之后,我们可以使用的MessageBox没有任何编译器错误。

记住任何其他的dll文件应参照这种方式,但Windows窗体应用程序默认的lib文件默认情况下,引用的问题

0

更多细节将让你更好的答案。但是对于当前的信息,最可能的原因是您正在引用的lib文件或其某个依赖项不可用。这可能是因为它不在您的GAC或您的运行时位置,文件格式冲突或许多其他事情。

我假设一切编译没有错误,当然。如果这不是您需要的,请再次添加详细信息。