我有一个针对.Net framework 3.5版本的C#应用程序。安装.Net framework 3.5时,二进制文件工作正常。 但是它给出了一些不兼容的问题.Net 4.0
我看到以下异常:
方法中的捕获异常:InitializeComponent行:0列:0异常:无法加载文件或程序集'WindowsFormsIntegration,Version = 3.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35'或其依赖项之一。系统找不到指定的文件。
答案 0 :(得分:3)
我认为您需要解决此问题的所有信息已经发布在评论中,但总结一下:
您真正需要的信息是发布的异常(强调我的):
无法加载文件或程序集'WindowsFormsIntegration,版本= 3.0.0.0
它试图加载。{3.0}版本的WindowsFormsIntegration.dll
但无法找到该文件(或其中一个依赖项),这可能是因为.Net 3.0框架未安装在客户端计算机上。请注意,.Net v4.0框架独立于.Net框架的先前版本 - 即使.Net框架v4.0存在,也无法保证.Net框架v3.0可在计算机上使用。
如果您安装.Net framework 3.0版,那么您的程序应该再次工作(除了其他问题),但是如果您的目标是.Net 4.0框架,那么您应该引用.Net 4.0版本WindowsFormsIntegration.dll
。只需删除现有引用,然后添加对.Net 4.0版本的另一个引用。
注意:“特定版本”属性是一个编译器时间设置,即使在运行时无法访问正确的版本,也允许Visual Studio构建,但此设置无效 - 必须存在正确的装配版本。见What you need to know about referenced assemblies in VS2005