2012-03-04 205 views
1

我有一个解决方案,其中包含三个项目; UI(winforms),业务层和数据访问层,并且我创建了一个安装项目。我已经将UI项目添加为主要输出,而其他两个项目(实际上是dll)自动添加到应用程序文件夹,并且这两个项目出现在解决方案中的“检测到的相关性”文件夹下。Visual Studio 2010安装项目设置

构建解决方案后,我安装了该程序。当我运行该程序时,出现以下错误:
"Could not load file or assembly 'xxxBL', Version = 1.0.0.0 Culture = neutral, PublicKey Token = null or one of its dependencies."
我在做什么错?

+0

xxxBL是否被部署? – Chriseyre2000 2012-03-04 20:25:00

+0

xxxBL.dll位于c:\ ProgramFiles \'MyCompany'\'MyProgram'文件夹中 – 2012-03-04 21:42:47

回答

1

首先确保加载失败的dll实际上位于应用程序的搜索路径中。如果是,请在未能加载的dll上运行Dependency Walker以查看加载失败的原因。与错误消息一样,可能是某个dll的依赖项无法加载。例如,如果您部署dll的调试版本,则会发生常见错误。它可以在你的开发机器上工作,因为它最有可能会使用你已经安装的whaterver SDK,但是在新的机器上它将无法加载,因为没有安装调试DLL。 Dependency Walker可以让你找到这样的问题。