http://codeguru.earthweb.com/misc/ThreadDemo.html
A Generic C++ Thread Class - Arun N Kumar. 
    Overcome the the lack of Object Oriented Programmability in using worker threads. 

解决方案 »

  1.   

    CALLER_INFO CallerInfo;
    CallerInfo是局部变量,很快就在堆栈中破坏了,所以不能得到
      

  2.   

    void SaveCallerInfoThread(void *p)
    {
          LPCALLER_INFO *pCInfo = (LPCALLER_INFO *)p;
         //这样即可,不要new}
      

  3.   

    to lhj:你的办法我试过,不行。
    to masterz:请具体说说这类问题怎么解决撒,谢谢了。
      

  4.   

    你new错地方了,应该在创建线程的地newCALLER_INFO* pCallerInfo = new CALLER_INFO;
    .....给成员变量赋值后,
    _beginthread(SaveCallerInfoThread,0,(void *)pCallerInfo);void SaveCallerInfoThread(void *p)
    {
    CALLER_INFO CInfo;
    memcpy(&CInfo, p, sizeof(CALLER_INFO));
    delete (CALLER_INFO*)p;}
      

  5.   

    另外,建议用 _beginthreadex , 比_beginthread好, 比CreateThread也好哈哈,这个算送的,不收分了:)