VS2013编写嵌入网页的ATL控件1-新建和配置

前言、废话和源码下载位置

最近做一个项目需要网页打开的ATL控件作为依托,显示三维内容。网页对控件可以调用函数,并且传送信息。控件也可以给网页发送消息。
我不懂ATL控件,完全初学,弄了很久。写个blog记录一下。
源码工程下载:
AtlTest1501_V1 打包链接

一、工作环境

  • Windows7 64位 旗舰版
  • VS2013
  • IE 10(有的IE11不可用还需要修改)

二、建立ATL控件

  1. “以管理员身份运行”VS2013。由于ATL控件需要注册,VS向导生成的项目在编译后,自动注册,所以需要用管理员身份,否则编译会失败,提示注册问题。
  2. 通过VS向导新建ATL项目。项目名称定为AtlTest1501.选项如下图:
    这里写图片描述
    点击完成。
  3. 在项目中添加ATL控件。
    右键添加类,选择ATL控件。填写类名称为“AtlControl”。
    这里写图片描述
    选择支持“连接点”。
    这里写图片描述
    支持“IObjectSafety”接口。
    这里写图片描述
    添加控件基于: “Stactic”。
    这里写图片描述
    支持 “Auto Size”。
    这里写图片描述
    点击完成,添加好了ATL控件。
  4. 配置调试,运行看看。
    项目属性对话框“调试”中:
    • “命令”输入:C:\Program Files\Internet Explorer\iexplore.exe
    • “命令参数”输入:$(ProjectDir)AtlControl.htm
    • “工作目录”输入:: (SolutionDir) (Configuration)
      这里写图片描述
      点击确定,编译运行。
      在IE网页中,“允许阻止的内容”,看到一个灰白色的ATL控件。
  5. 跟踪调试。
    • 在CAtlControl类的OnCreate函数中打断点。
    • 调试的时候,在调试菜单中,选择“附加到进程”,刷新IE网页,点击“允许阻止的内容”。就可以跟踪调试了。
    • 注意:我是64位的机器,由于ATL只有32位的。需要确认注册表信息是否兼容32位的IE。展开至 HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main,在右侧列表中找到 TabProcGrowth 设定为非 0,如果这个数值型态是 DWORD,那可以设定为 1,如果型态是字串,可以设定为 medium。如果没有这个项,就新建一个。百度一下有很多说这个的。原来在IE7的时候,还可以不用附加到进程直接就可以调试运行,在IE10中没有找到。刚刚查了一个《如何在Win7/Win8中打开32位版IE10和IE11》

试一下,可以在网页中控件灰白色的ATL控件,且断点可以打断。本文内容就完成了。
下一篇写,网页调用ATL控件,ATL控件向网页返回事件。

参考文章

最近查询过的文章很多。都不太记得了。这里记录了一些当时认为有用的。

ATL建立ActiveX控件样例(入门级)

其他:给控件加上安全描述 可以去掉IE每次“允许显示内容”的对话框询问。


http://mochou123456.blog.163.com/blog/static/46057646201152111542393/

DLL+ ActiveX控件+WEB页面调用例子
把程序嵌入网页之ATL编写ActiveX[标准窗口+接受参数]
  • 用于VS2013;
  • 讲解清晰入门用,我这个试用,都怀疑是物超的博客,看了半天不是。
  • 很清晰有时间看看,实现一下。
  • 第一行是我传输函数不能的关键。
  • 链接如下:
    http://blog.csdn.net/sidyhe/article/details/12048553
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值