LogDlg.cpp
E:\毕业设计\Zhao2\LogDlg.cpp(166) : error C2039: 'm_hData' : is not a member of 'CString'
        d:\program files\microsoft visual studio\vc98\mfc\include\afx.h(368) : see declaration of 'CString'
E:\毕业设计\Zhao2\LogDlg.cpp(166) : error C2039: 'm_dwDataLength' : is not a member of 'CString'
        d:\program files\microsoft visual studio\vc98\mfc\include\afx.h(368) : see declaration of 'CString'
执行 cl.exe 时出错.LogDlg.obj - 1 error(s), 0 warning(s)
vc学的不好这个问题看不懂啊!函数调用如下:
m_PicFile.WriteHuge(m_LogDaoSet.m_LogPic.m_hData,m_LogDaoSet.m_LogPic.m_dwDataLength);

解决方案 »

  1.   

    m_LogDaoSet.m_LogPic是CString类,
    没有成员m_hData和m_dwDataLength
      

  2.   

    (m_LogDaoSet.m_LogPic.GetBuffer(0),m_LogDaoSet.m_LogPic.GetLength());
    猜你可能是这个意思哈
      

  3.   

    相应的程序代码如下:
    void CLogDlg::OnDblclkListLog(NMHDR* pNMHDR, LRESULT* pResult) 
    {
    // TODO: Add your control notification handler code here

    *pResult = 0; POSITION pos=m_ctrList.GetFirstSelectedItemPosition();
    if (pos==NULL)
    {
    //如果没有选择记录,则退出
    return;
    }
    //获取当前记录的位置游标
    int m_CurLog=m_ctrList.GetNextSelectedItem(pos);
    int i=0;
    //创建一个CFile来保存临时图片,
    CFile m_PicFile;
    if(!m_PicFile.Open("C:\\1.jpg",CFile::modeCreate,NULL))
    {
    AfxMessageBox("临时文件打开失败!");
    return;
    }
    //打开数据库来获取图片内容
    CLogDaoSet m_LogDaoSet;
    try
    {
    if(m_LogDaoSet.IsOpen())
    m_LogDaoSet.Close();

    //设置查询条件
    m_LogDaoSet.Open(AFX_DAO_USE_DEFAULT_TYPE,"select * from pLog order by LogID DESC",0);
    //输出匹配上查询条件用户记录,直到记录为空
    while(!m_LogDaoSet.IsEOF())
    {
    m_LogDaoSet.MoveNext();
    //如果是被双击的记录,则保存到临时文件中。
    if(i == m_CurLog)
    {
    m_PicFile.WriteHuge(m_LogDaoSet.m_LogPic.m_hData,m_LogDaoSet.m_LogPic.m_dwDataLength);
    }
    i++;
    }
    //关闭记录集
    if(m_LogDaoSet.IsOpen())
    m_LogDaoSet.Close();
    //关闭临时文件。
    m_PicFile.Close();
    //直接调用Windows相关程序来显示图片
    ::WinExec("C:\\1.jpg",SW_SHOW);
    }
    //意外捕获
    catch(CDaoException*e)
    {
    e->ReportError ();
    //e->Delete ();
    return;
    }
    }
      

  4.   

    m_LogDaoSet这个的类不是你写的?
    把出错的地方改成
    m_PicFile.WriteHuge(
    m_LogDaoSet.m_LogPic.GetBuffer(0),m_LogDaoSet.m_LogPic.GetLength());