为什么
m_pRecordset->Fields->GetItem
   (_variant_t("词"))->Value=_bstr_t("孩子");可以吧一条记录添加到数据库
但是
m_pRecordset->Fields->GetItem
   (_variant_t("词"))->Value=_bstr_t(m_word);
  m_word 是CString  类型
 就说有异常,不能添加到数据库 ??应该怎么处理m_word??

解决方案 »

  1.   

    m_pRecordset->Fields->GetItem
       (_variant_t("词"))->Value=_bstr_t((LPSTR)(LPCTSTR)m_word);呢?
      

  2.   

    原来问题出在这里,我还是不懂,读得是格式化得文件(看结构就清楚)
    我设结构
         typedef struct{
    char word[30];
    char tone[30];
    char wdmeaning[40];
    char     ke[5];
    char     order[5];
    char     other[18];
    }MYWORD;
    文件已经打开,从文件读一个单元到结构:
    myFile.Read(&myWord, sizeof(MYWORD))
    我只想输出myWord.word一项
    GetDlgItem(IDC_WORD)->SetWindowText(LPCTSTR(myWord.word));
    结果什么音标,词义全部都输出
    如果是想输出音标
    GetDlgItem(IDC_WORD)->SetWindowText(LPCTSTR(myWord.tone ));则把音标后面全部输出(单词没有输出)不是明明只有30个字节嘛?
    谁救救我,有分了多多相送
      

  3.   

    估计是你的word没有空终止符,\0结尾