tppe.dwsize:=sizeof(tppe);
          tt:=createtoolhelp32snapshot(TH32CS_SNAPTHREAD,0);
            if   thread32first(tt,tppe)   then
                repeat
                    if   tppe.th32OwnerProcessID=pid   then
                       begin
                         if  tppe.th32threadid<>ThI then  begin
                           //hThread:=OpenThread(PROCESS_TERMINATE, False, tppe.th32threadid);
                           TerminateThread(hThread,0);
                           listbox1.items.add(inttostr(tppe.th32threadid));
                           end;
                           end;
                      until   not   thread32next(tt,tppe);
                      closehandle(tt);

解决方案 »

  1.   

    OpenThread:=GetProcAddress(LoadLibrary('Kernel32.dll'),'OpenThread');
      

  2.   

    这个函数delphi没有提供……必须自己定义
    function   OpenThread(dwDesiredAccess:   DWORD;   bInheritHandle:     
                        BOOL;   dwProcessId:   DWORD):   THandle;   external     
                        kernel32   name   'OpenThread';