VS2017使用C#编写COM组件
一、新建类库项目
VS2017已经支持Core了,不过我们新建的是Framework框架的类库,而且只有Framework框架的项目能开发COM组件,因为Windows系统中才有COM组件这一概念,Linux系统中没有COM组件这一说。
二、 在项目的属性页选中"Build" -->"Register for COM interop"
中文版VS是在项目的属性页选中"生成" -->"为COM互操作注册"
三、 在项目的属性页设置"Signing" -->"Choose a strong name key file"
中文版VS是在项目的属性页选中"签名" -->"选择强命名密钥文件"
四、修改Properties目录中的AssemblyInfo.cs
五、编写测试类和功能方法
六、类上面[Guid()]特性值的来源(Tools-->Create GUID)
七、COM组件的安装及卸载
八、验证COM组件是否安装成功
在注册表下的"HKEY_CLASSES_ROOT" 文件夹中可以找到刚才注册的组件,根据ProgId的值进行搜索即可。
九、“80040154没有注册类”异常的解决方案
如果在调用Com组件中的方法时报了如下异常,可以试试以管理员的身份启动VS,然后再打开Com组件的解决方案,重新编译注册即可。
这篇文章是在前辈现有成果的基础上又完善了一些东西,如果本文对您有帮助,请评论、点赞支持一下,谢谢!
参考文章:
https://blog.csdn.net/kingmax54212008/article/details/73604195#commentBox
VS2017使用C#编写COM组件相关推荐
- 编写react组件_React组件的“黄金法则”如何帮助您编写更好的代码
编写react组件 以及钩子如何发挥作用 (And how hooks come into play) Recently I've adopted a new philosophy that chan ...
- 用vue优雅地编写UI组件的几条指导原则
前言 最近在尝试写几个UI组件,并通过阅读element-ui的源码,与其反复比较,然后认真思考,最后总结出一些自己的一些心得和体会.在造轮子的过程中,既巩固了html,css,js基础,又加深了对v ...
- DELPHI怎样编写COM组件
元旦闲来无事,学习一下DELPHI怎样编写COM组件.结果一试才发现问题多多,要么是找不到接口,要么是找不到方法.查了很多资料,发现说的都不清楚.现在把我所学到的和大家分享一下,希望新学的人能少走弯路 ...
- vue 如何生成一个dom元素_通过一个简单的示例学习如何编写Vue组件
大家好,本篇文章我将带着大家一起学习如何编写自定义组件(Components),通过「vue基础」新手快速入门篇(一)这篇文章的学习,我们知道了 Vue 设计的目的就是为了方便我们创建基于组件UI的项 ...
- 编写react组件_s! 这就是为什么ReasonReact是编写React的最佳方法的原因
编写react组件 Are you using React to build user interfaces? Well, I am too. And now, you'll learn why yo ...
- 编写react组件_如何编写第一个React.js组件
编写react组件 React的函数和类组件,道具,状态和事件处理程序 (React's function and class components, props, state, and event ...
- iOS应用日志:开始编写日志组件与异常日志
应用日志(一):开始编写日志组件 对于那些做后端开发的工程师来说,看 LOG解Bug应该是理所当然的事,但我接触到的移动应用开发的工程师里面,很多人并没有这个意识,查Bug时总是一遍一遍的试图重现,试 ...
- vanilla js_用Vanilla js编写前端组件
vanilla js There's so much hype these days around front-end frameworks (React, Angular, Vue) that I ...
- React学习(三):通过 React 编写名片组件(React属性)
阿里云服务器0元试用,首购低至0.9元/月起 [开发云]年年都是折扣价,不用四处薅羊毛 前置内容阅读 React学习(二):编写 React 组件并成功挂载 效果预览: 1. 启动 my-projec ...
- React编写input组件传参共用onChange
之前写页面上的input比较少,所以没有单提出来一个组件,今天研究了下input组件,但共用一个onChange的问题卡了一会儿,查了下发现几个比较好的方法,分享下: 方法一 Input组件 let ...
最新文章
- Spring-bean作用域
- 关于Java中何时使用static和工具类相关知识
- 技术宝典 | WebRTC ADM 源码流程分析
- 职场有多少IT精英透支健康和生命?
- 使用Hanlp加载大字典
- java jdk1.8 jvm_JDK1.8 JVM调优之初识JVM(一)
- 数据平面开发套件(DPDK)中的Vhost / Virtio的配置和性能
- 基于JAVA+SpringMVC+Mybatis+MYSQL的族谱管理系统
- flex布局怎么设置子元素大小_48张小图带你领略Flex 布局之美
- 在Git中更改文件名的大小写
- SQL variable type
- php 查看session 时间,php中session过期时间设置及session回收机制介绍
- mysql可视化界面创建表_mysql安装及可视化界面
- 数学建模 Lingo 基本算法模板
- 这3种管理者是“企业毒瘤”,须根除
- windchill 系统客制角色
- android 屏幕旋转
- 安卓studio 添加后台bgm音乐的几种方法
- python type() 判断数据类型
- python 忽略异常_关于python:如何正确地忽略异常
热门文章
- mathtype过期,不用每次都去回顾教程
- php命令行路径,命令行 – PHP命令行php.ini路径错误
- php图书管理系统外文文献,JSP图书管理系统论文+源码+英文文献翻译+参考文献 第10页...
- usb不能识别的解决方案
- LordPE--计算RVA到Offset的值
- php 显示探针_UPUPW PHP探针安全版19.08.06
- 权重计算方法一:层次分析法(AHP)
- Resource Hacker(可以修改.exe文件)
- 网络弱电工程办理签证注意九个方面
- JZOJ6734. 【2020.06.18省选模拟】航行