同上

解决方案 »

  1.   

    VARIANT类型传入COM对象a1,
    LPDISPATCH lp= a1.pdispVal;
    DISPID dispid;
    OLECHAR* func = L"ID";//COM对象的属性或者方法名称
    if (FAILED(lp->GetIDsOfNames(IID_NULL, &func, 1, GetUserDefaultLCID(), &dispid)))
    {
    strResult="1";
    return strResult.AllocSysString();
    }
    DISPPARAMS dispparams = {NULL};
    VARIANT result; if (FAILED(lp->Invoke(dispid, IID_NULL, GetUserDefaultLCID(), DISPATCH_METHOD, &dispparams,&result, NULL, NULL)))
    {
    strResult="执行错误";
    return strResult.AllocSysString();
    }