23.03.21 《CLR via C#》 笔记2
创始人
2025-06-01 04:00:58
0

第二章 生成、打包、部署和管理应用程序及类型

  1. .NET Framework部署目标

    1. DLL hell: 安装新应用程序时破坏另一个安装好的程序
    2. 安装的复杂性:安装时涉及复制文件、注册表、快捷方式等,除了使用安装程序以外很难直接复制程序
    3. 安全性:代码可以执行任何操作,比如删除文件、发送电子邮件等
  2. 响应文件:包含一组编译器命令行的文本文件

  3. 元数据:由几个表构成的二进制数据块

    1. 定义表:模块的标识、类型、方法、字段、参数、属性、事件等
    2. 引用表:代码引用的类型、字段、方法、属性和事件等
    3. 清单表:程序集中的资源清单、public类型清单等
  4. 作者推荐使用多文件程序集

  5. 将模块合并成程序集的方法

    1. 使用C#编辑器
    2. 使用程序集链接器(AL.exe)
  6. 在PE文件中嵌入版本资源信息(windows资源管理器中详细信息显示的各种版本信息)

  7. 程序集的身份标识中还包括语言文化(区域性)

  8. 私有程序集的部署(安装)

    1. 直接复制文件(运行时在应用程序目录查找引用的程序集)
    2. 打包成MSI文件等,实现程序集按需安装
    3. 使用VS的功能发布应用程序
  9. 简单管理控制(配置)
    使用配置文件(XML),比如指定当前文件夹中查找不到程序集时,在哪个文件夹中查找

第三章 共享程序集和强命名程序集

  1. 私有部署和全局部署:私有是程序集部署到应用程序的基目录或子目录;全局是部署到公认位置
  2. 强命名程序集使用公钥/私钥进行签名,可以进行全局部署
  3. 程序集的强名称:由文件名、版本号、语言文化(Culture)、公钥(公钥的最小哈希)组成
  4. 创建强命名程序集
    1. 获取密钥(SN.exe)
    2. 编译器用私钥对程序集进行签名,将公钥嵌入清单
  5. 部署强命名程序集:放入公认的位置全局程序集缓存(GAC)(用工具放入,不要手动复制进去)
  6. 引用强命名程序集
    1. 指定了完整路径
    2. 只有文件名,按顺序在 工作目录、CSC目录、/lib编译器指定目录、LIB环境变量目录
    3. 不在GAC中查找,因为GAC的结构未知,无法指定路径
    4. CSC还可以指定字符串如 “Name,Version=xxx,Culture=xxx, PubKeyToken=xxx”
  7. 防篡改:用私钥签名后,检查文件哈希值与公钥解除签名后的值是否一致
  8. 延迟签名:开发时只使用公钥,但不用私钥签名(但是记录项中仍然有正确的公钥)
  9. CLR查找类型
    1. 类型在当前文件中
    2. 类型在当前程序集中,在另一个文件中
    3. 类型在另一个文件,另一个程序集中
  10. 版本控制:使用配置文件,指定程序集版本号,程序集更新后,修改配置文件CLR即可加载新的程序集;此处的修改,可使用配置文件自动进行(安装更新后的程序集时,自动修改配置文件)

相关内容

热门资讯

太突然!知名海外策略分析师张忆... 来源丨金石杂谈 12月31日,在喜迎2026年之前,知名海外策略分析师张忆东在个人公众号官宣离职。他...
离岸人民币兑美元一度升破6.9... 离岸人民币兑美元一度升破6.97,创2023年5月以来新高。 责编:彭勃 校对:王朝全
壁仞科技上市首日涨超100%,... 1月2日,“港股GPU第一股”壁仞科技(06082.HK)在港交所上市。开盘报35.7港元/股,较1...
开盘大涨超110%!“港股国产... 红星资本局1月2日消息,今日,“港股GPU第一股”壁仞科技在港交所挂牌上市,成为2026年港股市场首...
投资收益率排名垫底,中国太保更... 2025年最后一天,中国太保更换了首席投资官。12月31日,中国太保发布公告称,经董事会审议通过,同...
芯片股集体走强,华虹半导体盘中... 新京报贝壳财经讯 1月2日,港股芯片股集体走强,其中,华虹半导体盘中涨超9%,芯智控股盘中涨近5%,...
晓数点丨2025年十大牛股出炉... 2025年,沪指报收3968.84点,全年收涨18.41%,年内时隔十年重回4000点;创业板指全年...
复盘2025!公募基金四大痛点... 编者按:2025年,随着一系列改革举措加速落地见效,公募基金行业的高质量发展成色持续提升。岁末年初,...
斯基拉爆料:迈尼昂接近与米兰续... 新年伊始,对于AC米兰的球迷们来说,没有什么比听到主力门将迈尼昂即将续约的消息更令人振奋了。据知名记...
最新!美国对部分跨境汇款征收1... 据央视新闻,当地时间2026年1月1日,美国针对部分跨境汇款的新税收措施正式生效。根据美国财政部和美...