运行时未找到C#程序集

运行时未找到C#程序集,c#,assemblies,xna,C#,Assemblies,Xna,我的XNA项目在一台新电脑上出现了一个奇怪的错误。 我有两个关于解决方案的项目和一个供他们使用的库。其中一个项目是XNA游戏项目,运行非常完美。另一个项目是WindowsForm和XNA的混合。单击按钮时,表单将启动一个XNA类。 当我运行这个程序时,它工作得非常好,直到我单击启动XNA类的按钮为止。FileNotFoundException正好在构造函数执行时触发 System.IO.FileNotFoundException was unhandled Message="Could no

我的XNA项目在一台新电脑上出现了一个奇怪的错误。 我有两个关于解决方案的项目和一个供他们使用的库。其中一个项目是XNA游戏项目,运行非常完美。另一个项目是WindowsForm和XNA的混合。单击按钮时,表单将启动一个XNA类。 当我运行这个程序时,它工作得非常好,直到我单击启动XNA类的按钮为止。FileNotFoundException正好在构造函数执行时触发

System.IO.FileNotFoundException was unhandled   Message="Could not load file or assembly 'Microsoft.Xna.Framework, Version=3.0.0.0, Culture=neutral, PublicKeyToken=6d5c3888ef60e27d' or one of its dependencies. The system cannot find the path specified."
参考是正确的,在编译上没有问题。我们已经尝试删除引用并再次添加,但没有成功。 在其他队友的电脑中,一切正常


有人知道问题出在哪里吗?

检查配置文件以获取对此dll的引用。它最像是通过反射加载的类型。我在entlib中看到了这些类型的错误

如果此文件位于队友机器上的GAC中,或者您有不同的配置文件,则不会显示此错误


Brian

您可以尝试使用平台sdk中的depends.exe来调查缺少的依赖项。我想您已经手动验证了文件是否在正确的文件夹中


此外,此dll在

上显然存在问题。我使用一种解决方法来解决此问题:

我创建了一个新的XNA项目,并将所有内容移动到那里,然后将引用添加到WindowsForm。 组装问题不再发生了


感谢您的帮助。

您可以使用fuslogvw或上述任何其他工具来查找根本原因。您还可以捕获
AssemblyResolve
事件,并从
上下文中手动加载
中的程序集。

嘿,Gustavo,听起来您很久以前就遇到过这个问题:

听起来CLR试图寻找64位版本的XNA,但没有,这就是为什么创建一个新项目作为XNA项目工作,因为这些默认为32位


将其留作参考,同时,关闭此问题,选择答案:3

我检查了文件。我不明白的是,为什么只有这个项目会出错。两个项目都使用XNA的库。谢谢你的帮助,我没有depends.exe,但我会找一个。我检查了GAC,那里有一个正确的参考。对于配置文件,你指的是csproj文件吗?实际上,我指的是你的app.config。我解决了这个问题:我创建了一个新项目,并将所有东西都移动到那里。没有装配问题了!谢谢你的帮助。