背景

最近正在研发一款Revit插件,为加强dll间引用的关联性,对发布的所有dll进行了强签名。
在Revit加载强命名的插件后,执行插件命令,程序抛出异常未能加载文件或程序集或它的某一个依赖项。需要强名称程序集。

问题原因

强命名程序集的引用规则

假设一个项目的dll通过以下的方式进行引用

A
B
C
D
F
E
G

其中dll B是强命名的程序集,则被它引用的D/E/F都需要是强命名程序集。而引用B的项目A不需要强命名。

RevitAPI

查看了一下插件项目的引用,发现RevitAPI.dll和RevitAPIUI.dll都是弱命名程序集,因此插件本身不能进行强命名。

官方解析

有两篇文章说到Revit或AutoCAD插件无法进行强命名
1. Revit API: Not Strong Named (cont.)
2. No Inheritance and No Strong Naming
3. Can I sign my AutoCAD .NET plug-in with a strong name

大致原因是

  1. 强命名会导致插件补丁工作更复杂
  2. 强命名程序集需要放到GAC里才可以避免命名检查的性能损耗
  3. AutoCAD2015的插件曾经支持强命名,但考虑到太复杂,在后续的版本被移除了

当然还有解决方案(基于安全方面的考虑)

  • 只信任部分网络
  • 认证为Autodesk开发者并认证你的插件应用。

不能对Revit插件进行强签名相关推荐

  1. 基于bim技术的应用软件有哪些?提高bim工作效率的revit插件?

    基于bim技术的应用软件有哪些?提高bim工作效率的revit插件? 基于BIM技术应用的软件繁多,不需要统计小编知道的就有几十种,一个公司开发的bim软件至少都是3-5种左右,更不用说众多的开发公司 ...

  2. Revit插件快速提高建模的效率,分别都有那种功能revit插件

    Revit插件的出现是为了快速提高用revit进行建模的效率,市场上各种大小不同的revit插件现在很少提及了,其中有很多网站都有专门的Revit的插件,不需要下载就可以观看,现在很少有关于Revit ...

  3. Revit插件 | 建模助手2023年度版本大更新,就是这么懂你

    ​大家好,本期是懂你的建模助手. 从去年开始,建模助手几乎每个月都会有大大小小的活动,目的是让大家用最低的成本尝试极棒的建模体验!强行挽尊ing 但作为一支很pro的团队,单一地搞活动肯定不行滴,还得 ...

  4. Revit插件建模助手和蜘蛛侠,两款插件功能介绍!

    BIM在整个生命周期的应用中,施工阶段BIM的应用是BIM亟待解决的重要一环.但在BIM技术应用阶段,机电专业建模和深化调整是BIM技术应用的重点. 通过学习应用课程,我们掌握了各个专业基本构件的制作 ...

  5. Revit插件兼容2022版本升级策略(1) —背景

    一.背景 我们考虑兼容,其实是在做这样一件事:以应用级别源代码能够复用为目标,适应多个版本Revit提供的API的变化. 我们要适应多个Revit的API谈不上向前兼容向后兼容的概念.我们只是在以复用 ...

  6. 什么是.NET 程序集强签名

    http://blog.csdn.net/vipxiaotian/archive/2007/07/12/1686071.aspx 用强名称来给程序集签名即谓之程序集强签名! 那什么是强名称,签名又有什 ...

  7. [ZZ]强签名的由来和作用

    在网上,看到很多初学.NET的网友经常问,强签名是什么,它的作用是什么?一句话,强签名就是唯一标识一个Assembly文件的名称.它由Assembly的文件名.版本号.区域信息.公钥信息和处理器架构信 ...

  8. 建模大师怎么安装到revit中_工程师最爱的REVIT插件,让BIM建模溜到飞起!

    今日BIM公益培训:Revit 如何使用简化的二维图形代替复杂的三维模型平面投影私信--获取视频链接 手绘时代加班到晚上7点,CAD时代加班到晚上12点,BIM时代加班到第二天7点.为什么科技进步,我 ...

  9. 使用InternalsVisibleToAttribute给assembly添加“友元assembly”特性遭遇强签名

    一.如何让Intenal成员暴露给另一个程序集 我们知道Modifier为Internal的类型成员仅限于当前程序集能够访问,但是在某些情况下,我们希望将它们暴露给另一个程序集.比较典型的应用场景包括 ...

最新文章

  1. android小程序源代码_我从 Android 转到微信小程序的思考
  2. Class NPOI
  3. 你刚才淘宝上买衣服---具体分析技术工艺(淘宝页面显示处理的页面)
  4. Java一键生成图表
  5. C++ 函数默认参数和占位参数
  6. a number of 和the number of用法
  7. 两天撸一个天气应用微信小程序
  8. 网络安全等级保护的过程
  9. c语言 乘法计算器,C语言:简单计算器
  10. firefoxos :add a webidl,and use
  11. 微信Android SDK提示com.tencent.mm.plugin.openapi.Intent.ACTION_REFRESH_WXAPP
  12. PCA(主成分分析)方法的应用场景
  13. nc608串口服务器型号,康海时代NC608系列产品信息
  14. ArcObjects
  15. 基于ADS的低噪声放大电路设计
  16. 利用Cloudflare + Python 免费开启(IPV4/IPV6)DDNS
  17. pmp 总时差 自由时差 说明 和计算
  18. “东数西算”数据中心下算力、AI智能芯片如何发展?
  19. last 命令 – 显示用户历史登录情况
  20. python ffmpeg剪辑视频_视频剪辑什么鬼?Python 带你高效创作短视频

热门文章

  1. 教你用Python爬取动态加载的数据
  2. 【前端】组件基础使用
  3. python定义全局变量 跨文件使用
  4. 2018深大计算机考研,深圳大学2018年考研报录比
  5. 使用cronolog日志切分工具切分Tomcat的catalina.out日志文件
  6. 一名软件开发工程师电脑上的各桌面应用
  7. 提取微课商城的课程种类和课程名称
  8. 机器视觉作业之车牌定位matlab实现
  9. sincerit 1173 采矿
  10. html5我的心灵小屋代码,阳光心健心灵小屋