57 lines
1.4 KiB
C++
57 lines
1.4 KiB
C++
// 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;
|
|
}
|
|
|
|
|
|
};
|