《CLR Via C# 第3版》笔记之(一) - CLR版本及编译平台

简介:

久闻这本书的大名,终于有中文版的了(英文太差没办法)。希望通过学习本书能够对CLR和.net有更深刻的了解,并且通过blog记录一些平时不太留意的地方和心得体。

主要内容:

  1. 通过CLRVer.exe查看本机的CLR版本
  2. 编译平台对最终生成的程序的影响

1. 通过CLRVer.exe查看本机的CLR版本

在.net SDK中有查看CLR版本的工具CLRVer.exe。

具体位置类似:C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\NETFX 4.0 Tools (我是64bit的系统。)

直接使用命令CLRVer.exe就能查看目前安装的CLR版本,我使用的是powershell,命令及结果如下:

PS C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\NETFX 4.0 Tools> .\clrver.exe
Versions installed on the machine:
v2.0.50727
v4.0.30319

CLRVer.exe加上 –all 参数或进程ID还可以查看当前正在运行的进程所使用的CLR版本

PS C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\NETFX 4.0 Tools> .\clrver.exe -all
3152    powershell_ise.exe      v2.0.50727
684    WindowsLiveWriter.exe    v2.0.50727

从中可以看出powershell_ise和LiveWriter都是基于CLRv2.0.50727的。

注:这里也可以看出CLR的版本和.net framework的版本不是一回事。

因为powershell_ise用来WPF的技术,应该是.net framework3.0或者3.5的。但是CLR版本仍是2.0的。

2. 编译平台对最终生成的程序的影响

C# 在编译时可以指定/platform选项选择编译的平台。目前有四个选项,ANYCPU x86 x64 Itanium。

/platform对程序的影响如下表:

/platform

生成的托管模块

x86 Windows

x64 windows

IA64 Windows

anycpu 不明确指定 作为32bit应用程序运行 作为64bit应用程序运行 作为64bit应用程序运行
x86 x86 作为32bit应用程序运行 作为WoW64应用程序运行 作为WoW64应用程序运行
x64 x64 不运行 作为64bit应用程序运行 不运行
Itanium Itanium 不运行 不运行 作为64bit应用程序运行

注:关于WoW64技术

WoW64(Windows on Windows64):有Windows 64位版本提供的一个技术,允许运行32位Windows程序,WoW64能够模拟x86指令,但是这样做会显著的影响性能。




本文转自wang_yb博客园博客,原文链接:http://www.cnblogs.com/wang_yb/archive/2011/04/10/CLR_via_csharp_1.html,如需转载请自行联系原作者

目录
相关文章
|
6月前
|
C# 开发者
C# 10.0引入常量插值字符串:编译时确定性的新篇章
【1月更文挑战第22天】在C# 10.0中,微软为开发者带来了一项引人注目的新特性——常量插值字符串。这一功能允许在编译时处理和计算字符串插值表达式,从而得到可以在编译时确定的常量字符串。本文将深入探讨C# 10.0中常量插值字符串的概念、工作原理、使用场景及其对现有字符串处理方式的改进,旨在帮助读者更好地理解和应用这一强大的新特性。
|
6月前
|
C# Python
C# 笔记1 - 操作目录
C# 笔记1 - 操作目录
55 0
|
1月前
|
缓存 C# Windows
C#程序如何编译成Native代码
【10月更文挑战第15天】在C#中,可以通过.NET Native和第三方工具(如Ngen.exe)将程序编译成Native代码,以提升性能和启动速度。.NET Native适用于UWP应用,而Ngen.exe则通过预编译托管程序集为本地机器代码来加速启动。不过,这些方法也可能增加编译时间和部署复杂度。
|
2月前
|
SQL API 定位技术
基于C#使用winform技术的游戏平台的实现【C#课程设计】
本文介绍了基于C#使用WinForms技术开发的游戏平台项目,包括项目结构、运行截图、实现功能、部分代码说明、数据库设计和完整代码资源。项目涵盖了登录注册、个人信息修改、游戏商城列表查看、游戏管理、用户信息管理、数据分析等功能。代码示例包括ListView和ImageList的使用、图片上传、图表插件使用和SQL工具类封装,以及高德地图天气API的调用。
基于C#使用winform技术的游戏平台的实现【C#课程设计】
|
11天前
|
缓存 编译器 API
C# 一分钟浅谈:Roslyn 编译器平台介绍
【10月更文挑战第27天】Roslyn 是 Microsoft 开发的开源编译器平台,支持 C# 和 VB.NET。它将编译过程分解为多个阶段,并提供丰富的 API 供开发者分析、生成和修改代码。本文介绍了 Roslyn 的基本概念、安装配置、基础示例和高级应用,帮助开发者更好地理解和使用这一强大工具。
27 0
|
2月前
|
编译器 C# Android开发
Uno Platform 是一个用于构建跨平台应用程序的强大框架,它允许开发者使用 C# 和 XAML 来创建适用于多个平台的应用
Uno Platform 是一个用于构建跨平台应用程序的强大框架,它允许开发者使用 C# 和 XAML 来创建适用于多个平台的应用
255 8
|
1月前
|
算法 安全 测试技术
C#——刘铁猛笔记
C#——刘铁猛笔记
46 0
|
3月前
|
编译器 C# Windows
C#基础:手动编译一个.cs源代码文件并生成.exe可执行文件
通过上述步骤,应该能够高效准确地编译C#源代码并生成相应的可执行文件。此外,这一过程强调了对命令行编译器的理解,这在调试和自动化编译流程中是非常重要的。
255 2
|
3月前
|
C# 索引
C#各大版本特性
C#各大版本特性
76 0
|
5月前
|
关系型数据库 C# 数据库
技术笔记:MSCL超级工具类(C#),开发人员必备,开发利器
技术笔记:MSCL超级工具类(C#),开发人员必备,开发利器
54 3