应用程序如何确定要加载的 .NET Framework 版本

上传人:pu****.1 文档编号:509067449 上传时间:2023-06-26 格式:DOCX 页数:3 大小:30.60KB
返回 下载 相关 举报
应用程序如何确定要加载的 .NET Framework 版本_第1页
第1页 / 共3页
应用程序如何确定要加载的 .NET Framework 版本_第2页
第2页 / 共3页
应用程序如何确定要加载的 .NET Framework 版本_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

《应用程序如何确定要加载的 .NET Framework 版本》由会员分享,可在线阅读,更多相关《应用程序如何确定要加载的 .NET Framework 版本(3页珍藏版)》请在金锄头文库上搜索。

1、(本文出处:确定要加载的运行时版本,MSDN的另一篇文章描述得和本文有冲突,经验证,本文描述的是准确的。)概念:.NET Framework 具有两个主要组件:公共语言运行时和 .NET Framework 类库。 公共语言运行时是 .NET Framework 的基础。 您可以将运行时看作一个在执行时管理代码的代理,公共语言运行时管理内存、线程执行、代码执行、代码安全验证、编译以及其他系统服务。.NET Framework 的另一个主要组件是类库,它是一个综合性的面向对象的可重用类型集合,您可以使用它开发多种应用程序,这些应用程序包括传统的命令行或图形用户界面 (GUI) 应用程序,也包括基

2、于 ASP.NET 所提供的最新创新的应用程序(如 Web 窗体和 XML Web Services)。.NET Framework 由公共语言运行时的一个版本和大约二十四个 .NET Framework 程序集(它们组成类型库)构成。 运行时将 .NET Framework 程序集视为单个单元。 例如,.NET Framework 的 1.0 版由运行时 1.0.3705 版和 .NET Framework 程序集 1.0.3300.0 版构成。运行时和 .NET Framework 程序集分别采用不同的版本。 例如,运行时的 1.0 版实际上是 1.0.3705.0 版,而 .NET Fr

3、amework 程序集的 1.0 版实际上是 1.0.3300.0 版。正文应用程序在其上运行的 .NET Framework 的版本的确定方式如下:(由Microsoft .NET Runtime Execution Engine处理,位于windowssystem32mscoree.dll)1. 如果存在应用程序配置文件,运行时检查应用程序配置文件中的 元素 元素。 如果 元素中指定了一个或多个支持的运行时版本,则运行时加载第一个 元素指定的运行时版本。 如果这一版本不可用,则运行时检查下一个 元素,并尝试加载所指定的运行时版本。 如果这一运行时版本仍不可用,则检查后面的 元素。 如果没有

4、任何受支持的运行时版本,则运行时将无法加载运行时版本,同时向用户显示一条消息(参见第 3 步)。 如果支持多个运行时版本,则第一个元素应指定优先级最高的运行时版本,而最后一个元素应指定优先级最低的版本。 元素不能指定一个比生成它的运行时版本更低的运行时版本,否则运行的时候会触发BadImageFormatException:生成此程序集的运行库比当前加载的运行库新。在应用程序配置文件中使用 以指定运行时版本。 在 .NET Framework 1.0 版中曾使用 元素,但它已不再是指示应用程序或组件使用哪种运行时版本的首选方法。仅为支持运行时 1.0 版而生成的应用程序必须使用 元素。 使用运

5、行时的版本 1.1 或更高版本生成的应用程序必须使用 元素。应用程序配置文件必须与应用程序同名,扩展名为 .config。 例如,对于名称为 MyExecutable.exe 的应用程序,应用程序配置文件的名称必须是 MyExecutable.exe.config。2. 运行时读取应用程序可执行文件的 PE 文件头。 如果 PE 文件头指定的运行时版本可用,则运行时加载这一版本。 如果指定的运行时版本不可用,则运行时搜索 Microsoft 已认定其与 PE 标头中的运行时版本兼容的运行时版本。 如果未发现这样的版本,则接着执行步骤 3。 每个托管的应用程序和组件的可迁移可执行 (PE) 文件

6、头中都包含有关生成它的运行时版本的信息。 公共语言运行时使用这些信息确定应用程序最可能需要运行的运行时版本。.NET Framework 4 不能自动使用自己的公共语言运行时版本来运行由 .NET Framework 早期版本生成的应用程序。 若要使用 .NET Framework 4 运行较早的应用程序,则必须使用 Visual Studio 中项目的属性指定的目标 .NET Framework 版本编译应用程序, 或使用应用程序配置文件中的 元素 可指定所支持的运行时。3. 运行时显示一条消息,指出应用程序支持的运行时版本不可用。 没有加载运行时。附录1:Visual Studio 多目标

7、概述利用 Visual Studio 的多目标功能,可以指定应用程序所需的 .NET Framework 特定版本或配置文件。 多目标功能的主要好处在于,可以使用当前版本的 Visual Studio 来创建和开发针对早期版本的 .NET Framework 的项目。 例如,您可以用 Visual Studio 2010 继续开发在 Visual Studio 2005 和 Visual Studio 2008 中创建的项目,而无需添加新的 .NET Framework 依赖项。 多目标功能有助于保证应用程序仅使用在指定 .NET Framework 版本中提供的功能。 此外,多目标功能还可让

8、您继续部署较早的应用程序,而无需您在部署包中添加新的 .NET Framework 版本。“添加引用”对话框会禁用不适合 .NET Framework 的目标版本的系统程序集。 (系统程序集是作为 .NET Framework 版本一部分的 .dll 文件。) 这将有助于您避免向未在目标版本中的程序集添加引用。若要开发与多个版本的 .NET Framework 兼容的应用程序,建议您针对较低版本的 .NET Framework 开发应用程序,然后针对较高版本的 .NET Framework 进行生成。 例如,可以针对 .NET Framework 3.5 开发应用程序,然后针对 .NET Framework 4 进行生成。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 幼儿/小学教育 > 小学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号