Using the ATL COM AppWizard

原创 2012年07月23日 07:49:22
Using the ATL COM AppWizard

To create a project using the ATL COM AppWizard

  1. Open Visual C++. Click New on the File menu and click the Projects tab.

  2. Choose ATL COM AppWizard as your application type.

  3. Enter a project name.

  4. Click OK.

The ATL COM AppWizard displays a dialog box showing options that apply to your ATL project:

  • Choose from one of three server types: Dynamic Link Library (DLL) for an in-process server, Executable (EXE) for a local out-of-process server, or Service (EXE), which is a Windows NT application that runs in the background when NT starts up.

  • Select the Allow merging of proxy/stub code check box as a convenience when marshaling interfaces is required. This option places the MIDL generated proxy and stub code in the same DLL as the server.

  • Select the Support MFC check box (available for DLL projects only) to use MFC functionality (such as CString) in your server.

  • Select the Support MTS check box to modify the project build settings to support the Microsoft Transaction Server. For more information on adding MTS support to your project, see MTS Support in ATL Projects.

Click Finish to generate the project. The AppWizard then displays information about the project that it is creating and then displays the newly created project in the Project Workspace.

Note   When you build your project, you can choose a MinSize or MinDependency configuration. MinSize will generate a smaller component, since shared code will be used from Atl.dll. In this case, you must distribute Atl.dll with your component. MinDependency will generate a larger component, since all necessary code will be linked in with your component.

Note   When building a Release version of a project, you can get the following link error:

LIBCMT.LIB(crt0.obj) : error LNK2001: unresolved external symbol _main

This error occurs if you are using CRT functions that require CRT startup code. The Release configurations define _ATL_MIN_CRT, which excludes CRT startup code from your EXE or DLL. To avoid this error, do one of the following:

  • Remove _ATL_MIN_CRT from the list of preprocessor defines to allow CRT startup code to be included. On the Project menu, click Settings. In the Settings For: drop-down list, choose Multiple Configurations. In the Select project configuration(s) to modify dialog box that appears, click the check boxes for all Release versions, and then click OK. On the C/C++ tab, choose the General category, then remove _ATL_MIN_CRT from the Preprocessor definitions edit box.

  • If possible, remove calls to CRT functions that require CRT startup code and use their Win32 equivalents. For example, use lstrcmp instead of strcmp. Known functions that require CRT startup code are some of the string and floating point functions.

ATL COM appWizard

2010-12-03 15:09ATL,Active Template Library活动模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。通过活动模板库,可以建立...
  • xinxijisuan
  • xinxijisuan
  • 2011年02月23日 04:26
  • 5029

ATL入门:利用ATL编写简单的COM组件

序论       第一步:运行ATL COM Wizard         运行Visual C++ 并创建一个新的工程,选择“ATL COM AppWizard”,项目名称为”Simple_ATL”...
  • zhwang_1999
  • zhwang_1999
  • 2008年03月26日 23:35
  • 5812

COM组件(ATL篇)

目 录 第1章 创建进程内组件    1 1.1 目标    1 1.2 创建项目    3 1.2.1 VC++6.0    3 1.2....
  • Hanford
  • Hanford
  • 2016年11月25日 21:45
  • 1131

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

VS2010创建ATL工程及使用C++测试COM组件              1.创建ATL项目,取名MyCom 2. ATL 项目向导,勾选 【支持COM+ 1.0】和【支...
  • jiangqin115
  • jiangqin115
  • 2015年09月08日 09:31
  • 821

COM组件开发(六)——使用ATL开发COM组件

使用ATL开发COM组件           使用ATL开发COM组件之前,要对几个重要的类进行说明:           CComModule           这是ATL的中心模块类,它的...
  • q5806622
  • q5806622
  • 2015年02月27日 10:10
  • 2314

8.ATL实现简单的COM

本文演示了如何使用ATL开发简单的COM,同时对于ATL实现COM的原理给出了简要分析,对照博客和代码可掌握简单的ATL开发COM流程。...
  • wenzhou1219
  • wenzhou1219
  • 2016年07月16日 20:11
  • 1468

OLE、ActiveX、COM、ATL联系与区别

熟悉面向对象编程和网络编程的人一定对ActiveX、OLE和COM/DCOM这些概念不会陌生,但是它们之间究竟是什么样的关系,对许多们还是比较模糊的。在具体介绍它们的关系之间,我们还是先明确组件(Co...
  • lp310018931
  • lp310018931
  • 2015年09月19日 18:09
  • 1068

什么是ATL? (与COM的关系,及MFC与COM的关系)

什么是ATL (与COM的关系,及MFC与COM的关系)   自从1993年Microsoft首次公布了COM技术以后,Windows平台上的开发模式发生了巨大的变化,以COM为基础的一系列软件组件...
  • whatday
  • whatday
  • 2012年04月26日 14:48
  • 1295

Atl Com组件DLL非注册调用

1:包含头文件: 、#include “../ATLcomMfc/ATLcomMfc_i.h” 、#include “../ATLcomMfc/ATLcomMfc_i.c”因为头文件中有函数定义,...
  • BlueCY
  • BlueCY
  • 2017年05月02日 20:35
  • 499

VS2012创建ATL工程及使用MFC测试COM组件

这篇文章首先介绍了如何创建一个ATL工程,并为其添加接口类和实现接口方法;然后介绍了如何利用自动化的方式调用由ATL生成的dll,即在程序中获取CLSID和IID然后创建接口实例;最后分析了在程序中C...
  • pigautumn
  • pigautumn
  • 2015年01月22日 16:23
  • 6788
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Using the ATL COM AppWizard
举报原因:
原因补充:

(最多只允许输入30个字)