【发布时间】:2011-02-28 16:06:30
【问题描述】:
我有一个具有 C# 用户界面的 C# .NET windows 应用程序,所有处理背后的代码都是通过调用作为 C# 项目引用添加的 C++ dll(C++ 类库项目)来完成的。
但是最近当我格式化我的计算机并再次尝试运行我备份的项目时,在 Visual Studio 2005 中它给出了以下异常:
System.Windows.Forms.dll 中出现“System.IO.FileNotFoundException”类型的未处理异常
附加信息:找不到指定的模块。 (HRESULT 异常:0x8007007E)
当我将以下代码(例如)放入按钮单击事件中时,会引发此异常。
private void button3_Click(object sender, EventArgs e)
{
CyclopiaDll.Class1 cc = new CyclopiaDll.Class1(); // calling dll
cc.clearData();
}
然而,即使表单加载没有问题,该行实际上也会抛出异常:
Application.Run(new Form1());
我尝试构建新项目并再次添加引用的 dll,但仍然出现异常。 当我尝试在另一台计算机上运行这个项目时,这也发生在我身上。然而,在我的机器被格式化之后,我什至无法运行该应用程序。
我想解决这个问题的唯一方法是像以前一样从头开始重新创建项目。这很耗时。
有没有办法避免这个问题,以便我可以在我的计算机和另一台计算机上运行这个项目?
【问题讨论】: