我有一个.NET 4.0 Winforms应用程序,我正在尝试在InstallShield下的Windows 8.1上安装。复制文件时,有许多Windows弹出窗口显示消息:
An App on your PC needs the following Windows Feature:
.NET Framework 3.5 (includes .NET 2.0 and 3.0)
生成此消息的原因是什么,以及如何消除它?
我非常确定我的所有应用程序可执行文件和程序集都是基于“参考”和项目属性设置为4.0。
我希望在没有不必要的.NET 3.5安装的情况下继续安装,因为它不需要;如果我选择“跳过此安装”,应用程序将正常运行。即使我使用DISM预先安装.NET 3.5,也需要用户找到Windows 8安装CD才能启用该功能。
答案 0 :(得分:1)
事实证明,包含.NET程序或程序集的几个InstallShield组件将其InstallShield组件“.NET Settings”设置为“Local assembly”,从而触发了Windows 8 Feature On Demand。由于组件不需要在此安装之外可用,因此解决方案是将它们设置为“非.NET程序集”。