社区
ATL
帖子详情
如何将一个类转换为一个ActiveX控件
masterlee
2001-05-05 10:33:00
我现在有一个CColorPickerCB类,它是如下实现的:
class CColorPickerCB : public CComboBox
我想把这个CColorPickerCB类变成一个控件的形式,好在VB中使用。
...全文
119
4
打赏
收藏
如何将一个类转换为一个ActiveX控件
我现在有一个CColorPickerCB类,它是如下实现的: class CColorPickerCB : public CComboBox 我想把这个CColorPickerCB类变成一个控件的形式,好在VB中使用。
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
masterlee
2001-05-14
打赏
举报
回复
wtl是什么东东阿?详细一点了。
musicdancer
2001-05-12
打赏
举报
回复
不知道wtl里有没有这东东
ookaiii
2001-05-05
打赏
举报
回复
你该看看com就知道怎么办了,
masterlee
2001-05-05
打赏
举报
回复
有没有简单一点的办法啊!我自己试着做了一下,如果要把这个类变成控件,代码都得重新写过。
ActiveX
控件
导入程序
不用工具箱的话,自己手工添加,需要注意
一个
问题,就是要用Aximp.exe来包装一下ocx
控件
的
类
,然后再程序中引用生成的dll就可以了。 aximp [options]{file.dll | file.ocx} The following command generates MediaPlayer.dll and AxMediaPlayer.dll for the Media Player control msdxm.ocx. aximp c:\systemroot\system32\msdxm.ocx 将
ActiveX
控件
的 COM
类
型库中的
类
型定义
转换
为 Windows 窗体
控件
。 Windows 窗体只能承载 Windows 窗体
控件
,即从 Control 派生的
类
。Aximp.exe 生成可承载于 Windows 窗体上的
ActiveX
控件
的包装
类
。这使您得以使用可应用于其他 Windows 窗体
控件
的同一设计时支持和编程方法论。若要承载
ActiveX
控件
,必须生成从 AxHost 派生的包装
控件
。此包装
控件
包含基础
ActiveX
控件
的
一个
实例。它知道如何与
ActiveX
控件
通信,但它显示为 Windows 窗体
控件
。这个生成的
控件
承载
ActiveX
控件
并将其属性、方法和事件公开为生成
控件
的属性、方法和事件。 如果不包装一下直接用,会出现 灾难性 错误。上面已经说明了原因。 在项目中引用生成的ax开头的dll,在窗体代码中增加: 声明
一个
公有的
控件
对象: public AxISPICRECLib.AxISPICREC AxISPICREC; 在InitializeComponent()方法内初始化
控件
: AxISPICREC = new AxISPICRECLib.AxISPICREC();//必须new对象,否则窗体设计器出问题 ((System.ComponentModel.ISupportInitialize)(this.AxISPICREC)).BeginInit();//初始化开始 this.Controls.Add(this.AxISPICREC);//添加
控件
((System.ComponentModel.ISupportInitialize)(this.AxISPICREC)).EndInit(); this.AxISPICREC.OcxState = ((System.Windows.Forms.AxHost.State)(resources.GetObject("AxISPICREC.OcxState")));//设计
控件
状态 如果遇到“正试图在 os 加载程序锁内执行托管代码”这个错误,请设置“调试”--“异常” "----"Managed Debugging Assistants"中勾掉"LoaderLock" 就可以了。
将winform
控件
作为
activeX
放到web页上代码及演示
将winform
控件
作为
activeX
放到web页上代码
web页面嵌入excel
控件
,网页中在线编辑EXCEL表格实例
网页中嵌入excel
控件
,在线编辑excel。上面的例子我是装的office 2003 测试通过,如果客户端是office 2007 请更改classid。
Visual C++实践与提高-COM和COM+篇『PDF』
因文件超过20M不能上传,所以拆分为两个文件分次上传 第1章 COM背景知识 1.1 COM的起源 1.1.1 软件业面临的挑战 1.1.2 传统解决方案 1.1.3 面向对象程序设计方法 1.1.4 最终解决方案:组件软件 1.1.5 面向对象的组件模型——COM 1.2 COM的发展历程 1.2.1 COM以前的对象技术:DDE、OLE 1、VBX
控件
1.2.2 COM首次亮相:OLE2 1.2.3 Microsoft拥抱Internet:
ActiveX
1.2.4 更多的新名词:Windows DNA和COM+ 1.2.5 远程对象:ORBs和DCOM 1.2.6 COM的最新版本:COM+ 1.3 COM技术现状 1.3.1 COM与CORBA 1.3.2 COM与Enterprise Java Beans 1.3.3 Windows之外的COM 小结 第2章 从C++到COM 2.1 C++客户重用C++对象——例程DB 2.1.1 C++对象 2.1.2 客户程序 2.2 将C++对象移进DLL中——例程DB_cppdll 2.2.1 成员函数的引出 2.2.2 内存分配 2.2.3 Unicode/ASCII兼容 2.2.4 例程实现 2.2.4.1 修改接口文件 2.2.4.2 修改对象程序 2.2.4.3 修改客户程序 2.3 C++对象使用抽象基
类
——例程DB_vtbl 2.3.1 问题:私有数据成员被暴露 2.3.2 解决方案:抽象基
类
2.3.2.1 什么是抽象基
类
(Abstract Base Class) 2.3.2.2 实现秘诀:虚函数(Virtual Functions) 2.3.3 使用抽象基
类
2.3.4 例程实现 2.3.4.1 修改接口文件 2.3.4.2 修改对象程序 2.3.4.3 修改客户程序 2.4 改由COM库装载C++对象——例程dbalmostcom 2.4.1 COM库 2.4.2 对象创建的标准入口点 2.4.3 标准对象创建API 2.4.4 标准对象注册 2.4.5 例程实现 2.4.5.1 修改接口文件 2.4.5.2 修改对象程序 2.4.5.3 修改客户程序 2.5 将C++对象变成COM对象 2.5.1 引用计数 2.5.2 多接口 2.5.3 IUnknown接口 2.5.4 标准
类
厂接口:IClassFactory 2.5.5 对象代码的动态卸载 2.5.6 自动注册 2.5.7 例程实现 2.5.7.1 修改接口文件 2.5.7.2 修改对象程序 2.5.7.3 修改客户程序 2.6 为COM对象添加多接口支持 2.6.1 多接口 2.6.2 DEFINE_GUID 2.6.3 例程实现 2.6.3.1 修改接口文件 2.6.3.2 修改对象程序 2.6.3.3 修改客户程序 小结 第3章 COM基础知识 3.1 对象与接口 3.1.1 COM对象 3.1.2 COM接口 3.1.3 IUnknown接口 3.1.3.1 生存期控制:AddRef和Release 3.1.3.2 接口查询:QueryInterface 3.1.4 全球唯一标识符GUID 3.1.5 COM接口定义 3.1.6 接口描述语言IDL 3.2 COM应用模型 3.2.1 客户/服务器模型 3.2.2 进程内组件 3.2.3 进程外组件 3.2.4 COM库 3.2.5 HRESULT返回值 3.2.6 COM与注册表 3.3 COM组件 3.3.1 实现
类
厂对象 3.3.2
类
厂对象的创建 3.3.3 实现自动注册 3.3.4 实现自动卸载 3.4 COM客户 3.4.1 COM对象创建函数 3.4.1.1 CoGetClassObject 3.4.1.2 CoCreateInstance 3.4.1.3 CoCreateInstanceEx 3.4.2 如何调用进程内组件 3.4.3 COM客户调用进程外组件 3.5 进一步认识COM 3.5.1 可重用机制:包容和聚合 3.5.2 进程透明性 3.5.3 安全性机制 小结 第4章 COM扩展技术 4.1 可连接对象机制 4.1.1 客户、接收器与可连接对象 4.1.1.1 接收器 4.1.1.2 可连接对象 4.1.1.3 客户 4.1.2 实现可连接对象 4.1.3 实现接收器 4.1.4 建立接收器与连接点的连接 4.1.5 获得出接口的
类
型信息 4.2 结构化存储 4.2.1 什么叫结构化存储和复合文件 4.2.2 存储对象和IStorage接口 4.2.2.1 IStorage接口 4.2.2.2 获得IStorage指针 4.2.2.3 释放STATSTG内存 4.2.2.4 枚举存储对象中的元
VB6.0反编译工具
VB6.0反编译工具 OCX.EXE.DLL都可以反编译!
ATL
3,248
社区成员
48,529
社区内容
发帖
与我相关
我的任务
ATL
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
复制链接
扫一扫
分享
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章