首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Windows火锅-它是如何触发的?

Windows火锅-它是如何触发的?
EN

Stack Overflow用户
提问于 2016-03-22 15:23:13
回答 1查看 3.1K关注 0票数 1

Windows有时会提示“您的PC上的应用程序需要下面的Windows功能”,根据 (以及其他),"fondue.exe“显示。例如,如果使用.Net 3.5的应用程序安装在Windows8或10机器上,则会以某种方式调用fondue.exe,从而提示用户安装该.Net版本。

我想知道在这种情况下如何调用fondue。几个小时的搜索和重新措辞搜索词并没有取得丰硕成果。

一个必然的问题:在安装程序(InstallShield)中可以禁用此检查吗?

EN

回答 1

Stack Overflow用户

发布于 2016-03-23 12:16:41

我认为有两种基本办法是可能的。我不知道哪个是对的。

  • Windows特别识别.NET可执行文件。作为启动进程的一部分,它可以检查可执行文件,实现它的目标是未安装的CLR版本,并通过part提示安装该版本的CLR。
  • 加载.NET可执行文件的一部分,特别是正确版本的CLR,都要经过一个中心点,例如mscorlib.dll。作为这个加载过程的一部分,如果CLR的目标版本不可用,它可以启动并等待fondue。

至于如何避免这种情况,我认为有两个选择:

  • 先发制人地安装所需的.NET框架版本。通常情况下,这会变得困难,因为有时需要重新发行,有时需要启用Windows功能,有时该功能在本地不可用。
  • 配置.NET可执行文件以支持使用更高版本的CLR。通常,当显示.NET时,会出现一个较晚的版本。为此,可以将supportedRuntime元素添加到.exe.config文件中。如果可能的话,开发团队最好这样做,而不是安装团队,因为在默认情况下不启用此选项有向后兼容性的原因。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36158449

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档