CLR via C# 读书笔记2-5

AI应用架构师总结:智能问答系统用户意图识别的8种方法与实践! 意图识别是智能问答系统的大脑入口,其技术水平决定了系统能否准确捕捉用户的核心诉求。本文系统剖析了从基础规则到前沿PLM的8种核心意图识别方法透明简单,冷启动快,维护成本高。中等规模场景基线,依赖特征工程。利用词义和局部/序列信息,训练成本高。当前最优精度,需大量资源。添加意图灵活,冷启动友好,精度可能略逊。提升鲁棒性,系统变复杂。解决歧义和自然交互的关键(多轮)。增强专业领域理解和推理能力。成功的意图识别模块需要:精准的意图定义(Schema)是前提! 阅读详情

程序集的版本资源信息

使用 AL.exe 或 CSC.exe 生成的程序集都会包含一个标准 Win32 版本资源,通过查看这个文件的属性可以查看该信息,也可以在程序代码中调用System.Diagnostics.FileVersionInfo 的静态方法 GetVersionInfo 来查看。图 2-4 显示了之前生成的 MultiFileLibrary.dll 属性对话框:

可以通过设定自定义属性(custom attributes)来设定版本信息,请参见下面的代码片断:

using System.Reflection;
// FileDescription version information:
[assembly: AssemblyTitle("MultiFileLibrary.dll")]
// Comments version information:
[assembly: AssemblyDescription("This assembly contains MultiFileLibrary's types")]
// CompanyName version information:
[assembly: AssemblyCompany("Wintellect")]
// ProductName version information:
[assembly: AssemblyProduct("Wintellect (R) MultiFileLibrary's Type Library")]
// LegalCopyright version information:
[assembly: AssemblyCopyright("Copyright (c) Wintellect 2013")]
// LegalTrademarks version information:
[assembly:AssemblyTrademark("MultiFileLibrary is a registered trademark of Wintellect")]
// AssemblyVersion version information:
[assembly: AssemblyVersion("3.0.0.0")]

// FILEVERSION/FileVersion version information:
[assembly: AssemblyFileVersion("1.0.0.0")]
// PRODUCTVERSION/ProductVersion version information:
[assembly: AssemblyInformationalVersion("2.0.0.0")]
// Set the Language field (discussed later in the "Culture" section)
[assembly:AssemblyCulture("")]

可惜的是Windows 的资源管理器中并没有提供查看以上所有设定值的功能,表2-4 列出了各个版本资源字段与自定义属性之间的对应关系。另外如果在 AL.exe 生成程序集时,可以使用命令开关来设置这些信息,表2-4的第二列记录了这些开关。(C# 编译器并没有这些命令开关)

表2-4

版本资源AL.exe 命令开关自定义属性/备注
FILEVERSION/fileversionSystem.Reflection.AssemblyFileVersionAttribute
PRODUCTVERSION/productversionSystem.Reflection.AssemblyInformationalVersionAttribute
FILEFLAGSMASK(none)总为 VS_FFI_FILEFLAGSMASK (定义在 WinVer.h 中,值为 0x0000003F)
FILEFLAGS(none)总为 0
FILEOS(none)目前总为 VOS__WINDOWS32.
FILETYPE/target

当 /target:exe 或 /target:winexe 时,设为VFT_APP
当 /target:library 时,设为VFT_DLL

FILESUBTYPE(none)总为 VFT2_UNKNOWN
AssemblyVersion/versionSystem.Reflection.AssemblyVersionAttribute
Comments/descriptionSystem.Reflection.AssemblyDescriptionAttribute
CompanyName/companySystem.Reflection.AssemblyCompanyAttribute
FileDescription/titleSystem.Reflection.AssemblyTitleAttribute
FileVersion/versionSystem.Reflection.AssemblyFileVersionAttribute
InternalName/out设定为出力文件名 (不含扩展名)
LegalCopyright/copyrightSystem.Reflection.AssemblyCopyrightAttribute
LegalTrademarks/trademarkSystem.Reflection.AssemblyTrademarkAttribute
OriginalFilename/out设定为出力文件名 (不含路径)
PrivateBuild(none)总为空
ProductName/productSystem.Reflection.AssemblyProductAttribute
ProductVersion/productversionSystem.Reflection.AssemblyInformationalVersionAttribute
SpecialBuild(none)总为空

 

使用 Visual Studio 的伙计请注意:建立工程时IDE自动生成一个 AssemblyInfo.cs 文件,你可以直接修改该文件中的版本信息,也可以在工程属性页中修改相关设定,这两者是同步的。

版本号具有固定的格式,可划分为4部分,如表2-5

表2-5

 Major NumberMinor NumberBuild NumberRevision Number

例

2

5

719

2

示例的版本号为: 2.5.719.2,前两个数字组成了公共认知的版本号(这是个2.5 版的程序集)。第3个数字用于表示编译的批次,如果你进行每日编译,那么应当每天递增这个值。最后的数字表示某次编译的校订版本,当你一日进行多次编译时或者对应突发bug需要再次编译时可以使用。

在程序集中使用版本号时,你会发现有多达3个版本信息可以设定!他们的不同点参见下文:

■ AssemblyFileVersion
该版本号存在 Win32 版本资源中,仅用来表示信息,CLR 不使用该信息。通常你可以设定这个信息来显示给公众(Windows 资源管理器可查看到该信息),与用户交流时通常也使用这个信息。
■ AssemblyInformationalVersion
该版本号也存在 Win32 版本资源中,也仅用来表示信息,CLR 不使用该信息。它用来指示包含该程序集的产品版本。例如: 一个 2.0 版的产品包含了多个程序集,其中一个程序集是新建的(即:1.0 版的产品中没有包含它),此时你可以设定 AssemblyInformationalVersion 的 major 和 minor 为产品的版本号,然后每次打包整个产品时递增 build 和 revision。
■ AssemblyVersion
该版本存在 AssemblyDef manifest 元数据表中 CLR 把它与强命名一起来唯一标示一个程序集。

Python 爬虫实战:爬取 GitHub 热门项目(星数 / 语言 / 作者) 本文系统介绍了使用Python爬虫技术获取GitHub热门项目数据的完整方案。通过分析GitHub Trending页面和官方API两种数据源,详细讲解了HTML解析、JSON数据处理、反爬应对策略等关键技术。采用requests、BeautifulSoup、pandas等工具链,实现了项目信息(名称、星数、语言等)的结构化爬取,并配套数据清洗、统计分析及可视化功能。特别强调遵守GitHub API使用规范,包括Token认证、请求频率控制等合规要求。该方案为开发者提供了一种高效、合法的数据采集方法,适用于 阅读详情

相关推荐

AI漫剧制作全流程零基础实操指南:从剧本到剪辑

AI漫剧是一种利用AI工具将剧本、分镜、出图、配音、剪辑整合为流水线的短视频内容形式。其技术原理基于文生图、图生图与文本转语音模型的组合,核心挑战在于角色一致性控制与分镜批量出图。这项技术大幅降低了视频制作门槛,使个人创作者无需演员和设备即可产出剧情向短内容,广泛应用于短视频平台的情景剧、玄幻、甜宠等题材。本文给出了一套零基础可照做的全流程实操方案,覆盖剧本提示词、分镜表、出图选型、配音合成与剪辑模板,帮助你快速跑通AI漫剧制作链路。

weixin_29048309的博客 519

Windows 资源文件(.rc文件)小记

在windows下使用Qt时,通常会用到Windows的资源文件(给exe设置图标和版本信息等),比如命名为 main.rc #include "winver.h" IDI_ICON1 ICON "main.ico" IDI_ICON2 ICON "main2.ico" VS_VERSION_INFO VERSIONINFO FILEVE...

tomhibolu 1342

erdas监督分类(二)

去云 用一张没有云的影像替代有云影像 构建aoi图层 将云和云影编码合并 重编码工作 在监督分类做的差不多以后(纠正无误,无明显错误),就要对监督分类图像进行重编码和颜色调整。 在中选中Recode,对原来分类的地物类别进行重编码,(为彻底修改,记得备份)选中一列,在New Value输入新的编码,依次编码后点击应用apply,即可实现。 这时的图像如果是全黑的或者只有一两类的颜色也没有关系,新的编码覆盖掉了原来的编码,但是颜色并没有改变才会这样。可以点击图像,右击...

weixin_58968530的博客 958

如何写入和获取软件的版本信息(VS环境下)

******************************* *如何写入和获取软件版本信息(VS环境下)* *******************************如何写入软件版本信息:很简单,创建一个基于MFC...

addkpfk1986的博客 392

一文帮你彻底搞懂ARM Debug Interface之SWD(转)

ARM的文档写的已经很好了,但是关于上电以后的第一时间应该怎么操作,依然写的不够清晰,导致我第一次用的时候还是费了一些周折。今天做一个详细的梳理,希望能够帮助到更多的朋友。BTW, ARM_Cortex-M0/3 DesignStart系列会持续更新,只是中间可能会穿插其他知识点。SWD是Serial Wire Debug的简称,翻译成中文是”串行线调试”。

2302_79847220的博客 6858

网络安全学习路线是怎样的?

为什么要学习安全? 近几年网络安全事件层出不穷,相信大家哪怕没遇到过,但也听过不少了吧。如服务器遭受入侵被黑,用户帐号被盗;被钓鱼、勒索病毒等,这些一旦发生,对企业而言都是不小的打击。因此,网络安全不容忽视,同时随着时代的不断发展,公司对于运维及网络工程师要求也越来越严格。未来越来越吃香的一定是技能方向广的复合型人才。网络安全可以说是一条非常好的发展道路。 今年两会期间,全国政协委员,360集团创始人、董事长周鸿祎提交了关于网络安全行业特殊人才的提案,为广大白帽子人员争取更好...

网安技术分享 8696

[转]第2章 生成、打包、部署和管理应用程序及类型 part 2

【http://transbot.blog.163.com/blog/static/54213961201041801910149/】 本文是翻译初译稿,插图未能正确显示,内容在出版时也可能发生更改。点此返回《CLR via C#》中文版主页。 2.5  程序集版本资源信息 AL.exe或CSC.exe生成一个PE文件程序集时,还会在PE文件中嵌入一个标准的Win32版本资源。用户可以查看文

Chall.Wang的专栏 741

MPU6050数据融合避坑指南:当欧拉角遇到万向节死锁,我们该如何处理?

本文深入探讨了MPU6050在姿态解算中遇到的欧拉角万向节死锁问题,提供了四元数解决方案及工程实践策略。通过分析死锁现象的本质,介绍四元数的优势与实现方法,并给出必须使用欧拉角时的三种应对方案,帮助开发者有效规避数据跳变和解算失效问题。

weixin_30415113的博客 541

【IDE-Visual Studio】关于exe的版本中“文件版本”和其他版本信息中的“文件版本”、以及“产品版本”

效果 如图所示: 1、①-主文件版本、②-主产品版本:格式【v1,v2,v3,v4】 注意:v1、v2、v3、v4都是16位的数,所以他们的范围都是[0~65535](十进制)或 [0x0000~0xFFFF](十六进制) 2、③-副文件版本、④-副产品版本:格式【”string”】,默认格式为【”v1.v2.v3.v4”】 注意:因为③④都是字符串,则v1、v2、v3、v4没有限制

少莫千华 3221

【车辆仿真】从0开始建立dSPACE RT Simulink工程:输出模拟电平

0基础建议先看下前面的博文,补充基础知识。原来的博文太长太复杂,后续我会逐步梳理改进,去除操作层面的内容,仅关注知识层面,提升系列博文的系统性。【工程环境信息】:上位机:惠普台式PC(Windows 11专业版)下位机(实时机):SCALEXIO RTPC板卡:DS2680。

winnizap的博客 2054

Arm Neoverse CMN-700 SLC内存系统与缓存分区技术解析

现代处理器架构中,缓存一致性协议与内存子系统设计直接影响系统性能。Arm Neoverse CMN-700采用的SLC(System Level Cache)通过16-way组相联设计实现高效数据缓存,其物理地址索引机制支持灵活的way分区配置。在软件可配置内存(OCM)模式下,SLC可作为独立内存空间使用,通过寄存器控制实现模式切换与区域锁定。缓存分区技术则通过请求源分类和way-based分配策略,满足实时性任务与吞吐量场景的不同需求。这些技术在5G基站、边缘计算等低延迟场景中具有重要应用价值,特别是C

weixin_30263073的博客 611

PyGobject(一百一十一)使用Pyinstaller打包成APP和EXE

介绍Pyinstaller安装与使用 包括在MAC osx和Window系统 如何在Windows下安装pygobject 如何用Pyinstaller打包pygobject 如何添加hook 如何添加图标和版本信息 如何给windows exe文件添加版本信息 修改 pyi-grab_version.exe 支持 Python3 修改 pyi-set_version.exe

Yu的专栏 1万+

RT-DETR改进策略【独家融合改进】| SPD-Conv+PPA 再次提升模型针对小目标的特征提取能力

SPD-Conv是一种新的 CNN 构建模块,用于替代传统 CNN 架构中使用的步长卷积(strided convolution)和池化(pooling)层,它由空间到深度(Space-to-depth,SPD)层和非步长卷积(non - strided convolution)层组成。

Limiiiing的博客 1153

CLR via C# 读书笔记 5-2 为什么不使用Finalize

1.在创建对象的时候,Finalize需要更多的时间, 因为需要把对象放到Finalization List 中 2.Finalize会让你的应用程序运行的更慢,因为在GC的时候需要对每个对象执行额外的检查 3.Finalize会对内存造成更大的压力(Heap的内存分配问题) 4.Finalize执行时间是不确定的,如果是使用需要独占的资源例如File, 那么下一个想使用文件的人无法确...

weixin_30596023的博客 95

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

CLR via C# 3 读书笔记(14):第2章 生成、打包、部署和管理应用程序与类型 — 2.5 程序集版本资源信息...

当AL.exe或CSC.exe生成PE文件程序集时,还在PE文件中内嵌了一个标准的Win32版本资源。用户可以查看文件属性找到该资源。应用程序代码还可以在运行时调用System.Diagnostics.FileVersionInfo的GetVersionInfo静态方法来得到资源信息。下图显示了JeffTypes.dll属性对话框的Details选项卡。 当生成程序集时,我们应该使用自定...

weixin_30767835的博客 125

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

CLR via C# 读书笔记目录

一口气写了CLR via C# 两章的笔记,有些内容自己也似懂非懂,有些则觉得很好很强大,所以趁此机会作个目录同时为每篇文章打个评分:  纯理论,无聊 有参考价值,可看 有实用价值,必看 CLR via C# 读书笔记1-1: 托管模块 (Managed Modules)定义 CLR via C# 读书笔记1-2:程序集(Assemblies)定义 CLR via C# 读书笔记1-3

sqlchen的专栏 909

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

[CLR via C#读书笔记]第一章 CLR执行模型

CLR简介 CLR(Common Language Runtime)是一个可以由多种语言使用的“运行时",它与具体使用哪种语言无关,只要编译器支持CLR,无论选择什么语言,相应编译器都会将代码编译成一个托管模块,即一个标准的32位PE(Portable Executable)文件或64位PE32+文件,该模块需要CLR才能执行。 CLR的主要功能包括(1)内存管理;(2)程序集加载;(

胖子没有错! 1302

NET CLR via C#读书笔记 - 第九章 参数

NET CLR via C#读书笔记 - 第九章 参数1 可选参数和命名参数1.1 代码示例1.2 可选参数以及命名参数的规则和原则2 以引用方式传参3 可变数量的参数 1 可选参数和命名参数 1.1 代码示例   可选参数就是函数包含默认值得形参,命名参数是指调用方法的时候通过指定参数名称来传递实参,代码示例如下: public sealed class Demo{ //定义含有默认参数值的函数 其中x,s就是可选参数 public void dpFunc(int x = 0,string s = "

CreateNewWorld的博客 264

《CLR via C#》第八章 读书笔记(未完结

第八章 方法 第一节 实例构造器和类(引用类型) 1、构造器方法在“方法定义元数据表”中始终叫做.ctor(constructor的简称)。创建引用类型实例时,首先为实例的数据字段分配内存,然后初始化对象的附加字段(类型对象指针和同步块索引),最后调用类型的实例构造器来设置对象的初始状态。 2、构造引用类型的对象时,在调用类型的实例构造器之前,为对象分配的内存总是先被归零。 3、实例构造器...

qq_41543031的博客 250

《CLR via C#》第五章读书笔记

《CLR via C#》第五章 第五章编译语言的基元类型引用类型和值类型值类型的装箱和拆箱对象哈希码dynamic基元类型 第五章 主要是抽取一些重要的内容,简单的小结 编译语言的基元类型 编译器直接支持的数据类型成为基元类型。 基元类型直接映射到framework类库(FCL)中存在的类型。例如:C#的int直接映射到System.int32类型中。 编译器能够支持基元类型之间的隐式或显示转型。在不会发生数据丢失的情况下,允许隐式转换;反之,对于数据类型转换后会丢失精度或者数量级,C#就要求显示转换。

qq_44762814的博客 445

《CLR via C#》读书笔记 之 目录导航

《CLR via C#》读书笔记 之 目录导航 2013-02-27 读书笔记是按书本章节按序写的,只摘录了个人认为比较重要,关系比较紧密的知识点。第4部分 核心机制 和第5部分 线程处理 等有时间再整理 CLR核心功能包括:内存管理,程序集加载,安全性,异常处理,以及线程同步。 第Ⅰ部分 CLR基础 第一章:《CLR via C#》读书笔记 之 CLR执行模型 第二章: 《CLR...

weixin_34319999的博客 64

《CLR via C#》读书笔记-CLR寄宿与AppDomain

CLR寄存和AppDomain的简介

郑林的专栏 1382

《CLR via C#》第五章 读书笔记

第五章 基元类型、引用类型和值类型 对第五章内容进行简单的整理、摘要。主要是记录一些对本人来说比较陌生的东西。 第一节 编程语言的基元类型 1、编译器直接支持的数据类型称为基元类型(primitive type)。 2、C#的string关键字直接映射到System.String(一个FCL(Framework类型库)类型)。 3、C#的int始终映射到System.Int32。 ...

qq_41543031的博客 242

NET CLR via C#读书笔记 - 第八章 方法

NET CLR via C#读书笔记 - 第八章 方法1 实例构造器与引用类型(类)2 实例构造器和值类型(结构)3 类型构造器4 操作符重载方法5 转换操作符方法5.1 转换操作符方法描述5.2 转换操作符方法重载6 扩展方法7 分部方法 1 实例构造器与引用类型(类)   ① 构造器是将类型实例初始化为良好状态的特殊方法。   ② 元数据表中名字为.ctor   ③ 创建引用类型时,首先为实例的数据字段分配内存并将分配的内存字节初始化为0,其次初始化附加字段(类型对象指针和同步块索引),最后调用实例构造

CreateNewWorld的博客 329

CLR Via C# 第一章(CLR的执行模型)——读书笔记

CLR(common language runtime) 公共语言运行时 是一种可由多个编程语言使用的"运行时" CLR的核心功能(内存管理,程序集加载,安全性,异常处理和线程同步)可由面向CLR的所有语言使用 CLR执行模型 1.将源代码编译成托管模块 在使用对应编译器对一种支持CLR的语言进行编译时,结果都是托管模块(managed model)(包括中间语言(IL)以及元数据

qq_32884717的博客 633
上一篇: CLR via C# 读书笔记2-4 追记
下一篇: CLR via C# 读书笔记2-6
sqlchen
博客等级 码龄24年 10粉丝 3原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值