AFAIK Windows 8 附带 .NET Framework 4.5,不包括 2.0 版本。我有一个针对 2.0 版的应用程序,现在如果我在 Windows 8 中运行它,它会说“您需要安装 .net framework 2.0”。据我从 msdn 阅读,所有 .net 版本都具有向后兼容性,如果您希望您的应用程序在较新版本上运行,您需要在 app.config 文件中说明支持的框架版本。我准备了下面的配置文件,现在我可以运行 msi,但是,在执行自定义操作时 msiexec 失败并给出以下错误“错误 1001.InstallUtilLib.dll:CoreBindToRuntimeHost (hr=0x80070003): 系统找不到路径指定的”。我该如何解决这个错误?我的猜测是它正在寻找 .net framework 2.0 文件夹下的 InstallUtilLib。
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup>
<supportedRuntime version="v4.0" />
<supportedRuntime version="v3.5" />
<supportedRuntime version="v3.0" />
<supportedRuntime version="v2.0.50727" />
</startup>
</configuration>