// CVBDataObjectFiles.h : 由 Microsoft Visual C++ 创建的 ActiveX 控件包装器类的声明 #pragma once ///////////////////////////////////////////////////////////////////////////// // CVBDataObjectFiles class CVBDataObjectFiles : public COleDispatchDriver { public: CVBDataObjectFiles() {} // 调用 COleDispatchDriver 默认构造函数 CVBDataObjectFiles(LPDISPATCH pDispatch) : COleDispatchDriver(pDispatch) {} CVBDataObjectFiles(const CVBDataObjectFiles& dispatchSrc) : COleDispatchDriver(dispatchSrc) {} // 特性 public: // 操作 public: CString get_Item(long lIndex) { CString result; static BYTE parms[] = VTS_I4 ; InvokeHelper(0x0, DISPATCH_PROPERTYGET, VT_BSTR, (void*)&result, parms, lIndex); return result; } long get_Count() { long result; InvokeHelper(0x1, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, nullptr); return result; } void Add(LPCTSTR bstrFilename, VARIANT vIndex) { static BYTE parms[] = VTS_BSTR VTS_VARIANT ; InvokeHelper(0x2, DISPATCH_METHOD, VT_EMPTY, nullptr, parms, bstrFilename, &vIndex); } void Clear() { InvokeHelper(0x3, DISPATCH_METHOD, VT_EMPTY, nullptr, nullptr); } void Remove(VARIANT vIndex) { static BYTE parms[] = VTS_VARIANT ; InvokeHelper(0x4, DISPATCH_METHOD, VT_EMPTY, nullptr, parms, &vIndex); } LPUNKNOWN _NewEnum() { LPUNKNOWN result; InvokeHelper(0xfffffffc, DISPATCH_METHOD, VT_UNKNOWN, (void*)&result, nullptr); return result; } };