ActiveX初学疑惑

hzy694358 2010-07-16 05:04:47
建的MFC ActiveX ControlWizard工程
生成的是ocx格式文件
可是怎么看到有人说可以生成dll文件的
这个是怎么回事,
望指导……
...全文
105 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
副组长 2010-07-18
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 hzy694358 的回复:]
引用 4 楼 webipstin 的回复:

OCX和DLL不都是PE文件吗,没什么区别吧,应该直接改扩展名就行,ocx应该是自带控件注册的导出函数,dll应该是不带,其他应该都一样,没弄过,猜测。

不是直接改名吧……
[/Quote]
直接改不行的,除了DLL、OCX,还有EXE的控件呢。
Kang哥 2010-07-18
  • 打赏
  • 举报
回复
新建工程的时候选择 ATL COM AppWizard
第二步选择Server Type的时候用默认的选项Dynamic Link Library(DLL)
这样生成的是COM工程
比如你的工程名字是"ocx",在ClassView中,鼠标右键单击ocx classes,选择New ATL Object
在弹出的ATL Object Wizard对话框左边Category中选择Controls,右边你需要生成的控件的类型
比如你选择Full Control,然后Next>
在弹出的属性对话框中填入你需要的内容,比如在Names选项中Short Name写入ocx1,
如果需要建立连接点,还需要你在Attributes选项中选中Support Connection Points选项。
其他的自己看吧,最后确定。
ClassView中会出现Cocx1类,就是你要生成的控件的类,默认只有Cocx1()以及OnDraw(ATL_DRAWINFO &di)两个函数。
如上编写的工程编译后生成ocx.dll文件

生成一个基于对话框的工程,在Insert ActiveX Control对话框(别告诉我你不知道怎么弹出这个)中的控件列表中,会找到ocx1 Class, ok;
对话框中会看到你刚生成的控件,控件界面为黑边白色背景正方形,中间显示"ATL 3.0:ocx1"

:) 是不是你需要的?

hzy694358 2010-07-17
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 webipstin 的回复:]

OCX和DLL不都是PE文件吗,没什么区别吧,应该直接改扩展名就行,ocx应该是自带控件注册的导出函数,dll应该是不带,其他应该都一样,没弄过,猜测。
[/Quote]
不是直接改名吧……
xiaoyilong19 2010-07-17
  • 打赏
  • 举报
回复
属性 :链接 输出 .ocx /.dll
webipstin 2010-07-16
  • 打赏
  • 举报
回复
OCX和DLL不都是PE文件吗,没什么区别吧,应该直接改扩展名就行,ocx应该是自带控件注册的导出函数,dll应该是不带,其他应该都一样,没弄过,猜测。
hzy694358 2010-07-16
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 wltg2001 的回复:]

一样的,有的是OCX,有的是DLL,不影响使用。
[/Quote]
那要生成dll格式的ActiveX文件,工程要如何建呢
adamwyb 2010-07-16
  • 打赏
  • 举报
回复
选择win32项目中的动态链接库DLL工程,就可以生成DLL了
wltg2001 2010-07-16
  • 打赏
  • 举报
回复
一样的,有的是OCX,有的是DLL,不影响使用。
深入浅出MFC是一本介绍 MFC(Microsoft Foundation Classes)程式设计技术的书籍。对於 Windows 应用软体的开发感到兴趣,并欲使用 Visual C++ 整合环境的视觉开发工具,以 MFC 为程式基础的人,都可以从此书获得最根本最重要的知识与实例。 如果你是一位对 Application Framework 和物件导向(Object Oriented)观念感兴趣的技术狂热份子,想知道神秘的 Runtime Type Information、Dynamic Creation、Persistence、Message Mapping 以及 Command Routing 如何实作,本书能够充分满足你。事实上,依我之见,这些核心技术与彻底学会操控 MFC 乃同一件事情。 全书分为四篇: 第一篇【勿在浮砂筑高台】提供进入MFC核心技术以及应用技术之前的所有技术基础,包括: Win32程式观念:message based, event driven, multitasking, multithreading, console programming。 C++ 重要技术:类别与物件、this 指标与继承、静态成员、虚拟函式与多型、模板(template)类别、异常处理(exception handling)。 MFC 六大技术之简化模拟(Console 程式) 第二篇【欲善工事先利其器】提供给对 Visual C++ 整合环境全然陌生的朋友一个导引。这一篇当然不能取代 Visual C++ User's Guide 的地位,但对整个软体开发环境有全盘以及概观性的介绍,可以让初学者迅速了解手上掌握的工具,以及它们的主要功能。 第三篇【浅出 MFC 程式设计】介绍一个 MFC 程式的生死因果。已经有 MFC 程式经验的朋友,不见得不会对本篇感到惊艳。根据我的了解,太多人使用 MFC 是「只知道这麽做,不知道为什麽」;本篇详细解释 MFC 程式之来龙去脉,为初入 MFC 领域的读者奠定扎实的基础。说不定本篇会让你有醍醐灌顶之感。 第四篇【深入 MFC 程式设计】介绍各式各样 MFC 技术。「只知其然 不知其所以然」的不良副作用,在程式设计的企图进一步开展之後,愈来愈严重,最终会行不得也!那些最困扰我们的 MFC 巨集、MFC 常数定义,不得一窥堂奥的 MFC 黑箱作业,在本篇陆续曝光。本篇将使您高喊:Eureka! 范例程式方面,第三章有数个 Console 程式(DOS-like 程式,在 Windows 系统的DOS Box 中执行),模拟并简化 Application Framework 六大核心技术。另外,全书以一个循序渐进的 Scribble 程式(Visual C++ 所附范例),从第七章开始,分章探讨每一个 MFC 应用技术主题。第13章另有三个程式,示范 Multi-View 和 Multi-Document 的情况。14章~16章是第二版新增内容,主题分别是 MFC 多绪程式设计、Custom AppWizard、以及如何使用 Component Gallery提供的 ActiveX controls 和 components。

16,548

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • AIGC Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧