迁移到 .NET 4 时,Windows 要求用户启用 .NET 3.51
我正在使用 Visual Studio 2010 将一个相当大的项目从使用 .NET 3.5 转换为 .NET 4。我确保每个项目文件上的目标框架设置都设置为目标 .NET 4。我还将第三方 dll 转换为 .NET 4或删除依赖项。但是,当我在 Windows 8 开发预览版上运行程序时,它总是弹出对话框,要求用户启用 .NET 3.51。我发现如果我使用 *.exe.config 文件,它将抑制该对话框。
如何检查是否错过了仍在使用 .NET 3.5 或更早版本引用的任何程序集?或者这是由其他问题引起的? *.exe 清单文件是否影响 .NET 运行时版本?
如果您知道出了什么问题或遇到类似的情况,请提供帮助。提前致谢。
I'm converting a fairly large project from using .NET 3.5 to .NET 4 using Visual Studio 2010. I made sure the Target Framework setting on each project file was set to target .NET 4. I also converted third party dlls to .NET 4 or removed the dependancies. However, when I run my program on Windows 8 dev preview, it always pops up dialogs that asks user to enable .NET 3.51. I found that if I use an *.exe.config file it will suppress the dialog.
How do I check if I missed any assemblies that are still using .NET 3.5 or older references? Or is this caused by some other problem? Does *.exe manifest files affect .NET runtime version?
Please help if you have any idea what is wrong or you ran into something similar. Thanks in advance.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
根本原因很可能是 Windows 8 预览版中的以下原因之一:
据您的描述,我猜#3。只要您使用的是非 RTMed 操作系统,我敢打赌这里的人们将无法找到一些问题。
Root cause is most likely one of the following in Windows 8 Preview:
As far as your description, I would guess #3. As long as you are playing with a non-RTMed OS, I would bet there are some issues that people here will not be able to track down.