我有一个我们开发的产品,我们只是在 Windows 8 和 Server 2012 上进行测试。问题是,在 Win 8 / 2012 上安装完成后,兼容性垫片(据我目前了解)弹出出现一个对话,说该应用程序需要 .Net 3.5 才能正常运行。请看下面的截图:
由于我们的产品是本机打印机驱动程序,我认为这不太可能!Win 8 / 2012 的唯一先决条件是 Visual c++ 可重新分发的版本。
如果有帮助,我还使用 install shield 2010 创建安装程序。
有没有其他人看到 Win 8 错误地提示应用程序需要 .net 3.5?有谁知道定义兼容性垫片如何确定应用程序是否需要 .net 3.5 的任何可靠来源?
谢谢!
安迪
** 更新 **
找到这篇 msdn 博客文章:http: //blogs.technet.com/b/askcore/archive/2012/05/14/windows-8-and-net-framework-3-5.aspx。简而言之,可以通过以下方式触发对话:
- 您尝试使用可从 Microsoft 下载的可再发行包安装 .Net 2.0、3.0 或 3.5。
- 应用程序尝试在其自己的安装过程中安装所需版本的可再发行包之一。
- 需要旧版本的应用程序无需预安装所需版本即可执行。
不幸的是,这些似乎都不能解释为什么我会看到它!
** 更新 **
明确地说,我没有托管库或 exe,只有纯原生 c 和 c++,一些使用 Visual Studio 编译器(没有 clr 标志)构建,一些使用 DDK。
... 多么尴尬!...