看看这个,或许对你有些帮助。http://www.codeguru.com/mfc_database/dao_multithreading.shtml

解决方案 »

  1.   

    当然需要同步,但是你需要在线程中重新初始化OLE/COM库环境
      

  2.   

    CreateThread或_beginthreadex,其实能不用多线程就尽量不用,去看关于多线程的东西,一般有在什么情况下使用的讨论;
    在线程里操作线程外的数据基本上要注意同步问题;
    消息阻塞?没看懂。
      

  3.   

    void CRecStockDlg::OnOnReportStockdriver1(long nPacket, long pBuf) 
    你能说说你的函数的参数的意识么?
      

  4.   

    AfxBeginThread()
    注意数据的保护