社区
ATL
帖子详情
IClassFactory2 接口的几个疑问
jy_1201
2009-03-30 04:03:52
ActiveX里实现IClassFactory2接口,当在IE浏览器中使用这个ActiveX时。
IClassFactory2 里的方法成员,对像创建时会自动调用吗?还是需要做操作,在一开始就去调用?
比如IClassFactory2::CreateInstanceLic 这个创建授权实例,对像构建函数中会自动调用?还是在什么地方手动调用一下?
...全文
97
5
打赏
收藏
IClassFactory2 接口的几个疑问
ActiveX里实现IClassFactory2接口,当在IE浏览器中使用这个ActiveX时。 IClassFactory2 里的方法成员,对像创建时会自动调用吗?还是需要做操作,在一开始就去调用? 比如IClassFactory2::CreateInstanceLic 这个创建授权实例,对像构建函数中会自动调用?还是在什么地方手动调用一下?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
liuzxchina
2009-03-30
打赏
举报
回复
IE会加载文档的时候,自动处理对象的创建问题
你只需要使用脚本调用activx中的方法和属性就可以
oyljerry
2009-03-30
打赏
举报
回复
http://www.codeproject.com/KB/COM/ActiveXLicenceInfo.aspx?display=PrintAll&fid=352448&df=90&mpp=25&noise=3&sort=Position&view=Quick&select=2079901
oyljerry
2009-03-30
打赏
举报
回复
[Quote=引用 2 楼 jy_1201 的回复:]
谢谢,不是很明白。
我的ActiveX是以 <object>对像插入html的,不知道CreateInstanceLic在哪里会触发?对象构造函数里自动触发的还是需要手动去调用一下?
[/Quote]
js中调用的时候
new ActiveXObject
jy_1201
2009-03-30
打赏
举报
回复
谢谢,不是很明白。
我的ActiveX是以<object>对像插入html的,不知道CreateInstanceLic在哪里会触发?对象构造函数里自动触发的还是需要手动去调用一下?
oyljerry
2009-03-30
打赏
举报
回复
别人用的时候需要这么使用
通过IClassFactory2的CreateInstanceLic方法,可以使用临时权限创建对象。在取得了COM类对象之后,调用CreateInstanceLic方法,并且把注册码作为参数,就可以得到新建的COM对象的接口指针。
CreateInstanceLic的定义如下:
HRESULT CreateInstanceLic(
IUnknown* pUnkOuter,
IUnknown* pUnkReserved,
REFIID riid,
BSTR bstrKey,
void** ppvObject
);
pUnkOuter是聚合的外部对象指针,在不使用聚合的时候,用NULL。
pUnkReserved是保留的参数,用NULL。
riid是所需要返回的接口IID。
bstrKey是注册码。
ppvObject是保存返回的接口指针的地址。
具体代码:
Ixxx * pObj;
hr = pCF2->CreateInstanceLic(NULL, NULL, IID_Ixxx,
bstrLicenseKey, (void**) &pObj);
if (FAILED(hr))
{
...
}
创建之后就可以像使用普通COM对象一样使用新建的COM对象。
Visual C++实践与提高-COM和COM+篇『PDF』
6.5.3
几个
重要的类 6.5.3.1 CComModule 6.5.3.2 CComObjectRoot/CComObjectRootEx 6.5.3.3 CComCo
Class
6.5.3.4 CComObject 6.6 使用ATL开发COM组件——例程ATLSample 6.6.1 创建一个新的ATL工程 6.6.2 分析工程...
COM三大
接口
:IUnknown、I
Class
Factory
、IDispatch
(1)COM组件有三个最基本的
接口
类,分别是IUnknown、I
Class
Factory
、IDispatch。 (1、1) COM规范规定任何组件、任何
接口
都必须从IUnknown继承,IUnknown包含三个函数,分别是 QueryInterface、AddRef
COM:IUnknown、I
Class
Factory
、IDispatch
COM组件有三个最基本的
接口
类,分别是IUnknown、I
Class
Factory
、IDispatch。 COM规范规定任何组件、任何
接口
都必须从IUnknown继承,IUnknown包含三个函数,分别是 QueryInterface、AddRef、Release。这三个函数是...
【转载】COM:IUnknown、I
Class
Factory
、IDispatch
COM组件有三个最基本的
接口
类,分别是IUnknown、I
Class
Factory
、IDispatch。 COM规范规定任何组件、任何
接口
都必须从IUnknown继承,IUnknown包含三个函数,分别是 QueryInterface、AddRef、Release。这三个函数是...
COM三大
接口
:IUnknown、I
Class
Factory
、IDispatch。
COM组件有三个最基本的
接口
类,分别是IUnknown、I
Class
Factory
、IDispatch。 COM规范规定任何组件、任何
接口
都必须从IUnknown继承,IUnknown包含三个函数,分别是 QueryInterface、AddRef、Release。这三个函数...
ATL
3,245
社区成员
48,539
社区内容
发帖
与我相关
我的任务
ATL
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
复制链接
扫一扫
分享
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章