VS2010创建ATL工程及使用C++测试COM组件

VS2010创建ATL工程及使用C++测试COM组件
1.创建ATL项目,取名MyCom
在这里插入图片描述
2. ATL 项目向导,勾选 【支持COM+ 1.0】和【支持部件注册器】,其他默认,点击完成。
在这里插入图片描述
3.在该项目中添加类
在这里插入图片描述
4.添加一个ATL简单对象
在这里插入图片描述
5. ATL 简单对象向导,“简称”中输入类名称MyClass,其他输入框会自动填写,最下面的“ProgID”没有自动填写,最好自己写上一个,如MyCom.math,否则后面无法正确调用组件,点击“完成”。如果出现提示【是否覆盖现有文件】,点击【是】即可。
在这里插入图片描述
ProgID:客户端用来取代CLSID
创建此组件的编程ID
6. 切换到类视图,选中刚才添加的接口IMyClass,如下,然后右键单击【添加】添加方法。
在这里插入图片描述
7.添加方法TotalSum,依次选择参数类型并输入参数名字
此处传入一个参数n(in),返回一个参数sum(out)
在这里插入图片描述
8. 切换到解决方案资源管理器,展开项目“源文件”, 双击 MyCom.idl 打开IDL定义文件,看到如下代码,就是定义的COM方法了。
在这里插入图片描述
9. 双击打开MyClass.cpp 编辑代码,计算0到n的总和
在这里插入图片描述
#define STDMETHODIMP HRESULT
10.编译运行,会生成dll文件,并自动注册到系统中。
11.测试该COM组件,可以将MyCom_i.h和MyCom_i.c两个文件拷贝到自己的自己创建的工程目录下。
在这里插入图片描述
12.测试组件运行结果:
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/466489.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于气动人工肌肉的双足机器人关节设计

介绍了一种由气动人工肌肉构建的双足机器人关节,该关节利用气动人工肌肉的柔性特性,可以有效控制双足机器人快速行走或跑步时的落地脚冲击问题。   详细给出了气动人工肌肉的工作原理以及由其构成的关节系统的硬件架构。同时介绍了基于此硬件关节搭建的…

函数内置方法

abs() 取绝对值 dict() 数据转为字典 help() 帮助 min() 取最小值 max() 取最大值 setattr()未讲 all() 判断…

芯片IC附近为啥要放0.1uF的电容?看完秒懂~

数字电路要运行稳定可靠,电源一定要”干净“,并且能量补充一定要及时,也就是滤波去耦一定要好。什么是滤波去耦,简单的说就是在芯片不需要电流的时候存储能量,在需要电流的时候又能及时地补充能量。有读者看到这里会说…

ATL

https://blog.csdn.net/pigautumn/article/details/43021085 https://www.cnblogs.com/chechen/p/8119018.html

Linux下libxml2编程基础

Linux下libxml2编程基础一、libxml2的简介  xml是一个实现读、创建、以及操作xml数据功能的C语言库。并且支持XPATH查询,以及部分的支持XSLT转换等的功能。libxml2的下载地址为ftp://xmlsoft.org/libxml2/,完全版的库是开源的,并且带有例子…

无线中继蹭网(转)

随着无线技术的逐渐成熟,无线设备的价格也越来越低,已经有不少的家庭开始在自己的家中建立无线网络,利用笔记本,具备WiFi功能的手机连接无线网络享受冲浪乐趣,很多时候为了节约网费可能几家人一起共用一个ADSL上网帐号…

逆向篇 导读

---恢复内容开始--- 游戏安全领域相关知识可以大致分为逆向分析和开发两个方面。逆向分析是了解游戏逻辑实现、获取游戏关键数据和关键函数的技术手段。开发则是把前面分析的数据和代码利用起来实现辅助功能的技术手段。本章主要从静态分析技巧和动态分析技巧两个方面来介绍&am…

深入掌握Linux操作系统,其实也没你想象那么难

曹政大家应该都不陌生吧,众多IT人的偶像,数据、技术、业务,无一不精,被大家称为曹大。在曹大的一篇文章中,他曾经提到过,1998年,自己的第一份工作接手的是一个Windows系统下的人才网站系统&…

VMware vSphere Client客户端安装图解教程

https://www.osyunwei.com/archives/6600.html

Linux下获取xml调试信息等级

Linux下获取XML调试信息等级#ifndef _LOG_H_ #define _LOG_H_#include <stdio.h> #include <string.h> #include <unistd.h> #include <assert.h>#include <libxml/parser.h> #include <libxml/tree.h> #include <libxml/xmlmemory.h&g…

WSS页面定制系列(1)--如何启用表单页面的编辑模式

wss的大多数页面右上角的“站点操作”菜单都有一个编辑网页菜单项&#xff0c;用这个菜单项&#xff0c;可以启用当前页面的设计模式&#xff0c;修改或添加webpart。但是奇怪的是&#xff0c;所有的表单页面&#xff08;用来新建&#xff0c;编辑&#xff0c;查看列表项的页面…

单片机检测220V交流电通断电路

我们在topemic网站上分享过一篇题为"单片机检测220V交流电通断电路"的文章&#xff0c;目前有近万次阅读&#xff0c;在这里做个总结分享给没有读过该文的公众号朋友。废话不多说&#xff0c;直接上图&#xff1a;该电路工作原理如下&#xff1a;当220V断开时&#x…

uC/OS-II源码分析(二)

在真正开始分析源代码前&#xff0c;先来看使用uC/OS-II的三个例子 1&#xff09;使用信号量 #define TASK_STK_SIZE 512 /* 每个任务堆栈的大小(以字计算)*/#define N_TASKS 10 /* 任务数*/OS_STK TaskStk[N_TAS…

TRACE (VC)

TRACE 1、TRACE和TRACK是用来调试web服务器连接的HTTP方式。 2、TRACE宏对于VC下程序调试来说是很有用的东西&#xff0c;有着类似printf的功能。 3、MATLAB函数&#xff0c;用于求二维方阵的迹&#xff0c;即该方阵对角线上元素之和。4、Flex中的调试信息显示函数&#xff0c;…

你的年终奖有多少?

辛苦一年&#xff0c;最期待的就是发年终奖了。我哥在我们老家工厂上班&#xff0c;过年的时候&#xff0c;瞄了一眼他手下那些人的年终福利&#xff0c;很多人都是几千几千的奖金。小云嘲笑我说&#xff0c;你们码农真差劲&#xff0c;都没有年终奖&#xff0c;我说&#xff0…

Linux下打印调试管理

#ifndef _DEBUG_MANAGE_H_ #define _DEBUG_MANAGE_H_/* 信息的调试级别,数值起小级别越高 */ #define APP_EMERG "<0>" /* system is unusable */ #define APP_ALERT "<1>" /* action must be taken immediately */ #define APP_CRIT …

未来十大技能职场吃香

一个人掌握何种技能取决于他的兴趣、能力和聪明程度&#xff0c;也取决于他所能支配的资源以及制定的事业目标&#xff0c;拥有过硬技能的人有更多的工作机会。但是&#xff0c;由于经济发展前景不确定&#xff0c;掌握对你的事业有所帮助的技能显得尤为重要。相关网站通过多年…

linux学习一个服务(未完)

学习一个服务的过程 1.了解服务的作用&#xff1a;名字 功能&#xff0c;特点 2.安装 3.配置文件位置&#xff0c;端口 4.服务启动关闭的脚本 5.此服务的使用方法 6.修改配置文件&#xff0c;实战举例 7.排错&#xff08;从下到上&#xff0c;从内到外&#xff09; 转载于:http…

ReverseFind

函数原型&#xff1a;int ReverseFind( TCHAR ch ) const;   返回值: 返回此CString 对象中与要求的字符匹配的最后一个字符的索引&#xff1b;如果没有找到需要的字符则返回-1。   参数: ch 要搜索的字符。   说明:此成员函数在此CString 对象中搜索与一个子串匹配的最后…

Qt值得学习吗?详解Qt的几种开发方式

qt值得学习吗&#xff1f;嵌入式要学的东西真的很多&#xff0c;我们可能会说不写界面的话就不用学qt了&#xff1f;我不赞同。Qt的实现主要是采用p-impl手法&#xff0c;实现接口与实现分离&#xff0c;它有很好的消息循环机制&#xff0c;有的对象与线程的相关性&#xff0c;…