COM组件使用

VC可以创建COM组件的包装类,文件COM组件的使用。

在类向导中添加类,选择来自文件,添加自己需要包装的组件,例如添加一个脚本解析类,添加c:\windows\system32\msscript.ocx,添加组件中的IScriptControl接口,生成CScriptControl类,通过以下代码来使用:

    // 初始化COM环境
    CoInitialize(NULL);

    // 使用之前要包含生成的包装类的头文件CScriptControl.h
    CScriptControl Script;

    // 创建一个实例,MSScriptControl.ScriptControl名称可以用VS工具的OLE-COM Object Viewer来查看
    // 找到自己包装的COM组件库,双击打开,顶端即为类型名,下方的coclass为接口名称
    if (Script.CreateDispatch(L"MSScriptControl.ScriptControl") == TRUE)
    {
        // 设置使用的脚本语言
        Script.put_Language(L"JScript");

        // 定义使用的变量,VARIANT描述一个返回值,设置的形式可以使用_variant_t(1.2)类似的形式进行赋值
        VARIANT var;
        double dblTmp;

        try
        {
            // 执行脚本,返回值保存在var中
            var = Script.Eval(L"(11.2 + 5.5) * 12 + 2.2 / 1.2");

            // 取出var中的值
            dblTmp = var.dblVal;
        }
        catch (CException* e)
        {
            // 捕获异常
            MessageBox(L"Exception.");
        }

        // 释放接口
        Script.ReleaseDispatch();
    }

    // 关闭COM环境
    CoUninitialize();


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值