net组件转化成COM组件
第一步:生成秘钥文件
强名称工具 (Sn.exe) 有助于使用强名称对程序集进行签名。Sn.exe 提供了用于密钥管理、签名生成和签名验证的选项。
1、使用Visual Studio 命令
Visual Studio 开发人员命令提示会自动设置环境变量,这些变量使你能够轻松使用 .NET Framework 工具。安装完整版 Visual Studio 时会安装开发人员命令提示。安装所有 Express 版 Visual Studio 时不会安装。
你可能会看到多个命令提示,具体取决于你安装的 Visual Studio 及其他任何 SDK 的版本。例如,Visual Studio 的 64 位版本同时提供 32 位和 64 位命令提示。(大多数工具的 32 位和 64 位版本都相同;但少数工具针对具体的 32 位和 64 位环境做了一些改变。)
在 Windows 8.1 中
在“开始”屏幕上,按 CTRL + TAB 打开“应用程序” 列表,然后按 V。列表中将包括所有已安装的 Visual Studio 命令提示。(若要打开“开始”屏幕,请按键盘上的 Windows 徽标键 Windows 徽标。)
选择“开发人员命令提示”(或你想使用的命令提示)。
在 Windows 8 中
在“开始”屏幕上,按 Windows 徽标键 Windows 徽标 + Z。(若要打开“开始”屏幕,请按键盘上的 Windows 徽标键 Windows 徽标。)
选择屏幕底部的“应用程序视图”图标,然后按 V。列表中将包括所有已安装的 Visual Studio 命令提示。
选择“开发人员命令提示”(或你想使用的命令提示)。
在 Windows 7 中
选择“开始”,展开“所有程序”,然后展开“Microsoft Visual Studio”。
根据已安装的 Visual Studio 版本,选择“Visual Studio Tools”、“Visual Studio 命令提示”或你想使用的命令提示。
2、使用Visual Studio 命令
下面的命令创建一个新的随机密钥对,并将其存储在 keyPair.snk 中。
sn -k keyPair.snk
生成的秘钥文件在 C:\Windows\System32
参考:https://msdn.microsoft.com/zh-cn/library/k5b5tt23.aspx
第二步:使用强名称为程序集签名
使用 Visual Studio 创建程序集并为程序集签署强名称
在“解决方案资源管理器”中,打开解决方案的快捷菜单,然后选择“属性”。
选择“签名”选项卡。
选择“为程序集签名”框。
在“选择强名称密钥文件”框中,选择“<浏览…>”,然后导航到该密钥文件。若要创建新的密钥文件,请选择“<新建…>”,然后在“创建强名称密钥”对话框中输入其名称。
第三步:编译程序集
1、找到类库中的Properties下的AssemblyInfo.cs文件中,修改其[assembly: ComVisible(false)],将false改为true
对组件进行 COM 互操作注册
在“解决方案资源管理器”中选定一个项目,然后在“项目”菜单中单击“属性”。
在 Visual Basic 中单击“编译”选项卡。 在 C# 中单击“生成”选项卡。
选中“为 COM 互操作注册”复选框。
第四步:生成注册COM组件的注册文件
在Visual Studio 命令提示下,输入下面命令
regasm D:\Test.DLL /regfile:D:\Test.reg
net组件转化成COM组件的更多相关文章
- 开源免费且稳定实用的.NET PDF打印组件itextSharp(.NET组件介绍之八)
在这个.NET组件的介绍系列中,受到了很多园友的支持,一些园友(如:数据之巅. [秦时明月]等等这些大神 )也给我提出了对应的建议,我正在努力去改正,有不足之处还望大家多多包涵.在传播一些简单的知识的 ...
- 免费开源的.NET多类型文件解压缩组件SharpZipLib(.NET组件介绍之七)
前面介绍了六种.NET组件,其中有一种组件是写文件的压缩和解压,现在介绍另一种文件的解压缩组件SharpZipLib.在这个组件介绍系列中,只为简单的介绍组件的背景和简单的应用,读者在阅读时可以结合官 ...
- 免费高效实用的.NET操作Excel组件NPOI(.NET组件介绍之六)
很多的软件项目几乎都包含着对文档的操作,前面已经介绍过两款操作文档的组件,现在介绍一款文档操作的组件NPOI. NPOI可以生成没有安装在您的服务器上的Microsoft Office套件的Excel ...
- 高效而稳定的企业级.NET Office 组件Spire(.NET组件介绍之二)
在项目开发中,尤其是企业的业务系统中,对文档的操作是非常多的,有时几乎给人一种错觉的是”这个系统似乎就是专门操作文档的“.毕竟现在的很多办公中大都是在PC端操作文档等软件,在这些庞大而繁重的业务中,单 ...
- 一款开源免费的.NET文档操作组件DocX(.NET组件介绍之一)
在目前的软件项目中,都会较多的使用到对文档的操作,用于记录和统计相关业务信息.由于系统自身提供了对文档的相关操作,所以在一定程度上极大的简化了软件使用者的工作量. 在.NET项目中如果用户提出了相关文 ...
- KnockoutJS 3.X API 第六章 组件(5) 高级应用组件加载器
无论何时使用组件绑定或自定义元素注入组件,Knockout都将使用一个或多个组件装载器获取该组件的模板和视图模型. 组件加载器的任务是异步提供任何给定组件名称的模板/视图模型对. 本节目录 默认组件加 ...
- [js开源组件开发]tip提示组件
tip提示组件 常见的应用场景中,总是难免会遇到提示信息,比如显示不完全时需要鼠标移上去显示title,比如验证时的错误提示,比如操作按钮的辅助说明等,所以我独立出来了一个小的js组件,tip提示组件 ...
- [js开源组件开发]table表格组件
table表格组件 表格的渲染组件,demo请点击http://lovewebgames.com/jsmodule/table.html,git源码请点击https://github.com/tian ...
- Android组件系列----Android Service组件深入解析
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
随机推荐
- Linux驱动学习步骤(转载)
1. 学会写简单的makefile 2. 编一应用程序,可以用makefile跑起来 3. 学会写驱动的makefile 4. 写一简单char驱动,makefile编译通过,可以insmod, ls ...
- 通过实验窥探javascript的解析执行顺序
简介 javascript是一种解释型语言,它的执行是自上而下的.但是各浏览器对于[自上而下]的理解是有细微差别的,而代码的上下游也就是程序流对于程序正确运行又是至关重要的.所以我们有必要深入理解js ...
- 【HTML5】Canvas 内部元素添加事件处理
前言 canvas 没有提供为其内部元素添加事件监听的方法,因此如果要使 canvas 内的元素能够响应事件,需要自己动手实现.实现方法也很简单,首先获得鼠标在 canvas 上的坐标,计算当前坐标在 ...
- [Java拾遗三]JavaWeb基础之Servlet
Servlet 1,servlet介绍 servlet是一项动态web资源开发技术. 运行在服务器端. 作用:处理业务逻辑,生成动态的内容,返回给浏览器 ...
- eclipse中gradle的使用
安装gradle gradle默认的本地缓存库在c盘user目录下的.gradle文件夹下,安装好gradle后,可以添加环境变量GRADLE_USER_HOME自定义缓存位置. 安装eclipse插 ...
- paip.提升效率--gui 的选择--swing最佳实践swt awt
paip.提升效率--gui 的选择--swing最佳实践swt awt ////////////////弹出消息框. ////////////////myeclipse swing 开发最佳实践.. ...
- 共享jQuery/Eclipse/SVN/PS/DW/的API文档
1:jQuery的API和jquery.js和jquery.min.js 链接:http://pan.baidu.com/s/1gf7GD83 密码:tbt1 2:虚拟机软件和frdora和ubunt ...
- PHP--------memcache技术
新事物的产生都不是偶然的 1.为什么会产生memcache? 在大型的电商web页面上,数据量庞大,大量用户需要同时访问海量的数据,为了提高用户的访问效果,如何才能让页面加载最快,更友好的展示到用户面 ...
- 如何设计优秀的API(转)
到目前为止,已经负责API接近两年了,这两年中发现现有的API存在的问题越来越多,但很多API一旦发布后就不再能修改了,即时升级和维护是必须的.一旦API发生变化,就可能对相关的调用者带来巨大的代价, ...
- 深入学习golang(2)—channel
Channel 1. 概述 “网络,并发”是Go语言的两大feature.Go语言号称“互联网的C语言”,与使用传统的C语言相比,写一个Server所使用的代码更少,也更简单.写一个Server除了网 ...