本帖最后由 langshanglibie 于 2012-01-09 09:29:30 编辑

解决方案 »

  1.   

    线程句柄值正确?TerminateThread()函数调用正确?
      

  2.   

    TerminateThread 只能结束 CreateThread 或者 CreateProcess 创建的线程。
    可以跨进程终止吗?
      

  3.   

    先检查下函数TerminateThread(hThreadHandle,0);
    返回值是否成功执行。
      

  4.   

    返回子为0,没有执行成功。
    再用GetLastError()得到错误号,为6,句柄无效。
    为什么句柄无效?sprintf(szThreadHandle,"%d",(int)hRemoteThread);这里有错吗,不能转换吗?
      

  5.   

    SuspendTread(),TerminateThread()的返回值是什么,执行成功了吗?如没有用GetLastError看看出什么错了
      

  6.   

    调用SuspendThread()返回-1,调用TerminateThread()返回0。
    紧接着调用GetLastError()均返回6:无效句柄。
      

  7.   

    应该保存线程ID
    然后OpenThread
    HANDLE不能简单的跨进程使用,需用DuplicateHandle