我在MFC中加载axoptdate.ocx,它加载了.h和.cpp文件axOptDate.h文件中的定义
LPDISPATCH GetUpdate()
{
LPDISPATCH result;
GetProperty(0x12d, VT_DISPATCH, (void*)&result);
return result;
}
void SetUpdate(LPDISPATCH propVal)
{
SetProperty(0x12d, VT_DISPATCH, propVal);
}别人的源码中是这样的:DISP_PROPERTY_EX_ID(CAxRtUpdaterCtrl,"Update",dispidUpdate,GetUpdate,SetUpdate, VT_DISPATCH)IDispatch* CAxRtUpdaterCtrl::GetUpdate(void)
{
AFX_MANAGE_STATE(AfxGetStaticModuleState()); // TODO: 在此添加调度处理程序代码 return m_pMyEventHandler;
}void CAxRtUpdaterCtrl::SetUpdate(IDispatch* pVal)
{
AFX_MANAGE_STATE(AfxGetStaticModuleState()); // TODO: 在此添加属性处理程序代码 try
{
// js方法COM
m_pMyEventHandler = pVal;
m_pDispId = new DISPID(); // js方法的call接口
OLECHAR FAR* szMember = L"call";
HRESULT hr = pVal->GetIDsOfNames(IID_NULL, &szMember, 1, LOCALE_SYSTEM_DEFAULT, m_pDispId);
if (!SUCCEEDED(hr)) {
Debug("SetUpdate() Error getting dispID %lu\r\n", hr);
} else {
Debug("SetUpdate() Update set to %ld, which call dispatch is %ld\r\n", pVal, *m_pDispId);
}
}
catch(...)
{
} SetModifiedFlag();
}
我在MFC中该如何定义函数,和调用SetUpdate()参数输入什么呀???