我在VC中,用ADO数据邦定对话框向导自导导入ADO对象,我使用的是Access 2003。运行程序时没问题,当我加上,数据添加代码后,运行程序点击[添加]时,出现“多步操作产生错误。请检查每一步的状态值。”提示!
我的添加按钮代码如下:
void CRsCgDlg1::OnAddRecord() 
{
    // TODO: Add your control notification handler code here
    try{

    long index[1];
    VARIANT flds,vals;        //declare two safe array 
    flds.vt=VT_ARRAY|VT_VARIANT;
    vals.vt=VT_ARRAY|VT_VARIANT;
    SAFEARRAYBOUND bound;//declare safe array of edge
    bound.cElements=6;//define the number of safe array
    bound.lLbound=0;
    COleVariant fld[6],val[6];

    UpdateData(true);//将对话框变量传给对应的变量
    //设置字段名称数组元素值
    fld[0]="磨粒编号";
    fld[1]="磨粒图像";
    fld[2]="极差";
    fld[3]="平均值";
    fld[4]="标准差";
    fld[5]="磨粒类型";

/*    //将其他类型的数椐转换成字符串
    m_pRs->PutCollect("m_dDlgCol3",_variant_t(m_dDlgCol3));
    m_pRs->PutCollect("m_dDlgCol4",_variant_t(m_dDlgCol4));
    m_pRs->PutCollect("m_dDlgCol5",_variant_t(m_dDlgCol5));
*/
    //设置字段值数组元素值
    val[0]=/*m_wpID;*/m_strDlgCol1;
    val[1]=/*m_wpPicture;*/m_strDlgCol2;
    val[2]=/*m_wpJc;*/m_dDlgCol3;
    val[3]=/*m_wpAvr;*/m_dDlgCol4;
    val[4]=/*m_wpStd;*/m_dDlgCol5;
    val[5]=/*m_wpCls;*/m_strDlgCol6;
    //创建安全数组
    flds.parray=::SafeArrayCreate(VT_VARIANT,1,&bound);
    vals.parray=::SafeArrayCreate(VT_VARIANT,1,&bound);
    for(int i=0;i<6;i++)
    {
        index[0]=i;
        ::SafeArrayPutElement(flds.parray,index,&fld[i]);//
        ::SafeArrayPutElement(flds.parray,index,&fld[i]);//
    }

    m_pRs->AddNew(&flds,&vals);//使用安全数组添加新记录    
    }
    catch(_com_error &e)
    {
        m_pRs->CancelUpdate();
        MessageBox(e.Description());
    }

}
请各位高手指教!![em19]
    先谢谢各位![em10][em10]