Activex(VS2008)

假如项目名为MyActivex

1. 插入Dialog:资源视图---项目名---Dialog---右键插入Dialog;

2. 给Dialog添加类:右键Dialog----添加类(例如类名:CMyDlg)----基类选择Dialog;

3. MyActivexCtrl.h包含Dialog类的头文件,绑定CMyDlg:CMyDlg m_mydlg;

4. 添加方法:类视图---MyActivexLib---_DMyActivex---添加---方法;

5. 调用方法显示Dialog:MyActivexCtrl.cpp中新增方法showwin(void),方法主体如下:m_mydlg.DoModal();

6. web调用ActiveX方法:须重写IsInvokeAllowed方法:
BOOL CMyActivexCtrl::IsInvokeAllowed(DISPID dispid)
{
    return true;
}

7. 创建无模式对话框:
Dialog属性:style--child,visible---true,boder---Dialog Frame;
类视图---CMyActivexCtrl---消息列表-----WM_CREATE,绑定OnCreate方法
int CMyActivexCtrl::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
    if (COleControl::OnCreate(lpCreateStruct) == -1)
        return -1;

    // TODO:  在此添加您专用的创建代码
    m_CiTClientDlg.Create(IDD_ITCLIENT_DIALOG,this); //注意这里,网上有资料this使用NULL,造成的结果是对话框无反应
    return 0;
}

 8. 基于MFC的ActiveX,CLASSID位于.idl文件的类消息语句块中。

9. Js中创建ActiveX对象:var obj = new ActiveXObject(xxxx.xxxxx),其中括号内的参数为IMPLEMENT_OLECREATE_EX内的第二个参数,在MyActivexCtrl.cpp中可找到。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值