免费预览已结束,剩余1页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
c#写的程序集注册成标准的com组件c#写的程序集注册成标准的com组件,在asp中用server.createobject()调用。过程如下:里面有两个方法encrypt(string ptoencrypt,string skey) /加密decrypt(string ptodecrypt,string skey) /解密using system;using system.runtime.interopservices;namespace 名称空间 / 首先建立接口,这个是com必须使用的 guid(61bb24cb-4c2c-40f8-9e13-1ac5e558d56a) public interface iencrypt string encrypt(string ptoencrypt,string skey); string decrypt(string ptodecrypt,string skey); / 写接口的实现 guid(cb52e990-185e-4448-a7e8-c88ecad563ab) public class 类名称 : iencrypt public string encrypt(string ptoencrypt,string skey) / 复制faq加密代码 public string decrypt(string ptodecrypt,string skey) / 复制faq解密代码 然后用打包成.dll类库文件,假设名称为myencrypt.dll然后用如下工具regasm myencrypt.dll /tlb:myencrypt.tlb /regasm命令行工具作用就是为.net组件生成可以供com环境调用的类型库这个.tlb文件就是类型库,可以由vb6和vc+6引用。注意上面的guid是使用工具菜单里面的创建guid工具生成的。还要注意,自动生成的assemblyinfo.cs文件中必须添加强名称和版本号,因为com组件需要版本号,不要改动版本号,也不要用自动的1.*这样的版本号,最好使用这样的固定版本,而且必须一次添加,不能多次添加。代码如下一 生成.net程序集:using system;using system.io;using system.text;using system.runtime.interopservices;using system.security.cryptography; namespace csic / 首先建立接口,这个是com必须使用的 guid(61bb24cb-4c2c-40f8-9e13-1ac5e558d56a) public interface iencrypt string encrypt(string ptoencrypt,string skey); string decrypt(string ptodecrypt,string skey); / 写接口的实现 guid(cb52e990-185e-4448-a7e8-c88ecad563ab) public class crypt : iencrypt public string encrypt(string ptoencrypt,string skey) / 复制faq加密代码 public string decrypt(string ptodecrypt,string skey) / 复制faq解密代码 把上面的文件保存成项目的一个类库工程。然后使用的“vsitual studio .net工具”-vistual studio .net命令提示符在命令行内打下cd c: sn -k mykey.snk就在c盘根目录下生成一个名叫mykey.snk的强名称文件,然后关闭提示符窗口。在的那个类库工程自动生成的assemblyinfo.cs文件内把assembly: assemblykeyfile()改成assembly: assemblykeyfile(c:mykey.snk)把assembly: assemblyversion(1.0.*)改成assembly: assemblyversion() / 注意:这时你的com组件版本为版然后按shift + ctrl + b键生成dll库(使用release模式),假设是csic.crypt.dll。这时候,程序集就建立成功了。二、注册该程序集并创建一个类型库仍然使用开始菜单中的vistual studio .net命令提示符进入你的项目目录,假设为d:myprojectbinrelease在对话框中输入d:cd myprojectbinrelease然后输入 dir 命令可以看见csic.crypt.dll文件然后输入:regasm /tlb csic.crypt.tlb csic.crypt.dll然后就在这个目录下生成了csic.crypt.tlb类型库文件。不要关闭此提示符窗口。这时候,这个.dll的.net程序集就变成一个标准的com组件了,但是还不能用,必须让它变成全局com组件。这个regasm 实用程序将创建一个类型库并在 windows 注册表中对其进行注册,以使 physserver2.dll 中的类对 com 客户端可用 。三、 将程序集添加到全局程序集缓存中进入提示符窗口,输入gacutil /i csic.crypt.dll这时,你的这个dll就被复制到全局程序集缓存中了。也就是说无论在这个电脑的哪个硬盘上都可以使用此dll组件了。四、使用方法asp内的使用方法set obj = server.createobject(csic.crypt)dim str1str1 = obj.encrypt(要加密内容,密码) / 加密dim str2str2 = obj.decrypt(要解密内容,密码) / 解密注意:上面的这样的字符串:cb52e990-185e-4448-a7e8-c88ecad563ab是使用“工具”中“创建guid”自动生成的。方法2c# 创建标准com组件 1、定义接口及实现using system; using system.runtime.interopservices; namespace mylib /建立接口 guid(61bb24cb-4c2c-40f8-9e13-1ac5e558d56a) public interface imyinterface void read(); void write(); / 写接口的实现 guid(cb52e990-185e-4448-a7e8-c88ecad563ab) public class 类名称 :system.enterpriseservices.servicedcomponent,imyinterface public void read() public void write() 2、项目属性设置应用程序输出类型classlibrary3、项目属性设置程序集信息选中com可见4、项目属性设置编译:注册为com互用5、为程序集添加强名称文件生成强名称文件的方法:使用的“vsitual studio .net工具”-vistual studio .net命令提示符 在命令行内输入cd c: sn -k mykey.snk 就在c盘根目录下生成一个名叫mykey.snk的强名称文件6、生成com(1)vs中直接编译(2)通过命令行编译 regasm /tlb mylib.tlb mylib.dll regasm 实用程序将创建一个类型库并在
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年劳动关系协调员高级理论考试题库附答案
- 高中三年自我鉴定150字怎么写
- 张北2019年事业编招聘考试真题及答案解析
- 微专题探究类主观题专题专项训练(有答案)
- 感控知识考核试题及答案
- 教资考试笔试模拟试题及答案解析
- 新版(煤矿防突作业)煤矿特种作业人员考试题库及答案
- 旅游市场监管措施试题及答案
- 智能建造师继续教育专题考核试卷
- 材料员考试真题及答案
- 《发票发票知识培训》课件
- 2024年秋季新版苏科版八年级上册物理课件 跨学科实践 乐器的调查与制作
- 民兵潜力数据调查培训
- 辽海版综合实践活动七年级上册同步课件教案81用好电子小帮手之活动一电子产品走近你我他
- 离职员工不损害公司声誉保证书
- 3.8 第1课时弧长的计算 浙教版数学九年级上册课件
- 初中语+文+第9课《从百草园到三味书屋》课件+统编版语文七年级上册
- 2024年共青团入团积极分子团校结业考试试题库及答案
- 高标准农田改造提升建设项目投标方案(技术标)
- 市政设施养护维修服务规范(TZSZX002-2022)
- MOOC 创业团队建设与管理-首都经济贸易大学 中国大学慕课答案
评论
0/150
提交评论