- 使用COleVariant 传递基本数据类型
COleVariant vTrue(TRUE,VT_BOOL);
COleVariant vFalse(FALSE,VT_BOOL);
COleVariant vFileName((LPCTSTR)pszFilePath);
- 使用COleVariant 传递 特殊的参数
COleVariant vOpt((long)DISP_E_PARAMNOTFOUND, VT_ERROR);//代表可选参数
- 使用COleVariant 传递 对象。如增加书签的方法原型是“Bookmarks::Add ( _bstr_t Name, VARIANT * Range ) ”第二个参数应该是一个代表Range对象的指针,可以使用下面的代码构造这个对象
COleVariant vtRange;
vtRange.vt = VT_DISPATCH;
Word::RangePtr ptrRange = m_ptrSelection->GetRange();
LPDISPATCH lpdispatch;
ptrRange->QueryInterface(IID_IDispatch,(void**)&lpdispatch);
vtRange.pdispVal = (IDispatch*)lpdispatch;