void CDataControl::GetFieldNameCn(const CString& sTableName,CADORecordset* pAdoAccess,const CString& sNameEn, CString& sNameCn) { SAFEARRAY FAR* psa = NULL; SAFEARRAYBOUND rgsabound; _variant_t var; _variant_t Array; rgsabound.lLbound = 0; rgsabound.cElements = 4; psa = SafeArrayCreate(VT_VARIANT, 1, &rgsabound); var.vt = VT_EMPTY; long ix; ix = 0; SafeArrayPutElement(psa, &ix, &var); ix= 1; SafeArrayPutElement(psa, &ix, &var); ix = 2; var.vt = VT_BSTR; var.bstrVal =sTableName.AllocSysString(); //表名 sTableName SafeArrayPutElement(psa, &ix, &var); var.vt = VT_BSTR; ix = 3;