什么是COM组件?

        1.COM组件是以WIN32动态链接库(DLL)或可执行文件(EXE)形式发布的可执行代码组成。

        2.COM组件是一些小的二进制可执行文件,必须以二进制的形式发布。

        3.COM组件可以给应用程序、操作系统以及其它组件提供服务。

        4.自定义的COM组件可以在运行时刻同其它组件连接起来构成某个应用程序。

        5.COM组件必须是动态链接的。

使用COM组件需要注意:1.必须要保证升级应用时不破坏与以前版本的向后兼容性;2.必须要做到扩展系统服务时不依赖于特定的操作系统。

        COM组件不是一种计算机语言;

        COM组件不是DLL,只是利用DLL来给组件提供动态链接的能力;

        COM组件不是API函数集;

        COM组件不是类;

       
COM组件中的接口是一组由组件实现的,提供给客户使用的函数(在COM中的接口是一个包含函数指针数组的内存结构,数组元素是一个由组件实现的函数地址)。DLL的接口就是它所输出的函数。

COM组件创建的步骤

        1.在项目“ConsoleApp”右击,选择“属性”

       
2.选择“应用程序”。如果不是代码需要,目标框架尽量选择较低,便于选择支持更多版本的操作系统。输出类型选择“类库”,目的是将一个封装好的DLL注册到系统中。

       
3.选择“生成”。目标平台有两种,x64和x86。主要区别在于注册时使用的工具和使用COM组件的软件限制。如,若你的程序需要使用到COM组件,而你当前的应用程序属于32位,那么你需要将你的目标平台设置为“x86”,否则将不能使用,会出现报错信息。反之,如果你的应用程序是64位,那么你需要将你的目标平台设置为“x64”。只有这样,才能正确使用COM组件。

        在Visual Studio2019中,为了对“x86”和“x64”的应用程序进行兼容,可以将目标平台设置为“Any CPU”。

        如果勾选了“为COM互操作注册”,在Visual
Studio中可以自动将“生成”好的DLL注册到系统中(需要使用管理员权限)。如果需要把这个DLL注册到另一台计算机上,需要手动使用CMD命令注册(有32为注册和64位注册两种方式)。

 

        4.选择“签名”。要生成COM组件,必须创建签名。

 

技术
下载桌面版
GitHub
百度网盘(提取码:draw)
Gitee
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:ixiaoyang8@qq.com
QQ群:766591547
关注微信