VC-ATL-COM-新手入门教程(VS2010)

上传人:油条 文档编号:101406370 上传时间:2019-09-28 格式:DOCX 页数:7 大小:566.43KB
返回 下载 相关 举报
VC-ATL-COM-新手入门教程(VS2010)_第1页
第1页 / 共7页
VC-ATL-COM-新手入门教程(VS2010)_第2页
第2页 / 共7页
VC-ATL-COM-新手入门教程(VS2010)_第3页
第3页 / 共7页
VC-ATL-COM-新手入门教程(VS2010)_第4页
第4页 / 共7页
VC-ATL-COM-新手入门教程(VS2010)_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《VC-ATL-COM-新手入门教程(VS2010)》由会员分享,可在线阅读,更多相关《VC-ATL-COM-新手入门教程(VS2010)(7页珍藏版)》请在金锄头文库上搜索。

1、第1步:创建ATL项目启动VS 2010并创建一个新的工程,选择“ATL项目”,工程名为“Simple_ATL”。设置好工程的路径之后,单击“确定”按钮。打开向导,并点击“下一步”请确认应用程序类型选为“动态链接库(DLL)”。其余选项为默认值。点击“完成”。第2步:创建一个新的ATL对象在“类视图”中,应该会看到“Simple_ATL”,在此右击鼠标键,并在弹出菜单中选择“添加”-“类”,在出现的对话框中选择“ATL简单对象”,点击“添加”在“ATL简单对象向导”对话框中,在“简称”文本框中输入“First_ATL”。请注意,这时候向导就会自动地填写其它的文本框。然后,单击左部的“选项”标签

2、,在这里你需要做一些选择。“线程模型”选择默认的“单元”模型。对于“接口”,选择“双重”。最后,因为我们的程序与“聚合”无关,所以我们选择“否”。其它的选择默认值。单击“完成”,这时候向导就会为我们创建一个新的ATL简单对象。第3步:添加一个方法如果你现在在工作区中单击了“ClassView”标签,那么你会注意到向导在其中添加了一串东西。我们想添加的第一个东西是一个方法,可以在“IFirst_ATL”上右击鼠标键,并选择“添加”-“添加方法”,打开“添加方法向导”窗口。在返回值类型(Return Type)处你会看到,这个方法会默认返回HRESULT,在大多数情况下你不需要改变它。下一个文本框

3、允许我们输入方法的名称,我们可以输入“AddNumbers”。下面的组合框是让我们输入参数的,由于我们想做两个数的相加并获得一个返回的结果,所以我们需要三个参数,并且最后一个参数是一个指针。三个参数如下,并单击“完成”按钮。在“类视图”,你会在类(CFirst_ATL)的下方看到我们的“AddNumbers”方法以及我们给予它的参数。 在这个方法上双击鼠标键,并插入以下的代码:STDMETHODIMP CFirst_ATL:AddNumbers(LONG Num1, LONG Num2, LONG* ReturnVal)/ TODO: 在此添加实现代码*ReturnVal = Num1 + N

4、um2;return S_OK;第4步:编译DLL如果出现以下错误:1C:Program Files (x86)MSBuildMicrosoft.Cppv4.0Microsoft.CppCommon.targets(744,5): warning MSB3075: 命令“regsvr32 /s c:usersgldocumentsvisual studio 2010ProjectsSimple_ATLDebugSimple_ATL.dll”已退出,代码为 5。请验证您是否有足够的权限来运行此命令。1 上一错误已转换为警告,因为调用任务时指定了 ContinueOnError=true。1 继续

5、生成,因为任务“Exec”的“ContinueOnError”设置为“true”。1C:Program Files (x86)MSBuildMicrosoft.Cppv4.0Microsoft.CppCommon.targets(756,5): error MSB8011: 未能注册输出。请尝试启用“逐用户重定向”,或者使用提升的权限从命令提示符处注册该组件。11生成失败。1请使用管理员身份来运行VS 2010,并重新编译项目。第5步:在Visual Basic中调用COM组件启动VB,并选择“Windows窗体应用程序”,并建立工程,工程名为“TestCOMApp”。在对话框上放置一个命令按

6、钮。现在,我们需要添加COM服务器的引用,请单击“项目”菜单并选择“添加引用”,在“COM”选项卡中找到“Simple_ATLLib”并选择它。双击先前放置的命令按钮,VB会切换到这个按钮的代码窗口。添加以下的代码:Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click Dim objTestATL As Simple_ATLLib.First_ATL objTestATL = New Simple_ATLLib.First_ATL Dim lngReturnValue As Long objTestATL.AddNumbers(5, 7, lngReturnValue) MsgBox(The value of 5 + 7 is: & lngReturnValue) objTestATL = NothingEnd Sub运行这个VB工程,单击命令按钮,你就会看到期望的结果了:

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 中学教育 > 其它中学文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号