在MFC+ADO的工作环境下如何把一个二进制流保存入ACCESS 的OLE字段里.
我有一个二进制流的数据,放在pCabs.Buffer[1000]缓冲里.
现想把这个缓冲保存入ACCESS库的OLE类型字段里, 用如下代码一直不成功,请指教:
1 SAFEARRAY *psa;
2 psa=new SAFEARRAY;
3 memset(psa,0,sizeof(SAFEARRAY));
4 psa->pvData=pCabs.Buffer;
5 psa->cDims=1;
6
7
8 SAFEARRAYBOUND rgsabound[1];
9 rgsabound[0].lLbound = 0;
10 rgsabound[0].cElements = sizeof(pCabs.Buffer);
11 psa->rgsabound=rgsabound;
12
13 COleVariant Contents;
14 Contents.vt=VT_ARRAY;
15 Contents.parray=psa;
16 m_pMainFrame->m_pOpenRcMDB->PutCollect(_bstr_t("Content"),Contents);
系统报如下错误:
cannot convert from 'struct tagSAFEARRAYBOUND' to 'struct tagSAFEARRAYBOUND [1]'(是指第十一行)
我也不知道上面这样做行不行
总而言之,我怎么才能把一个二进制流的缓冲保存入ACCESS 的OLE 类型字段.