RT :)

解决方案 »

  1.   

    var 
     SnapProcHandle: THandle;
      ThreadEntry: TThreadEntry32;
      Next: Boolean; 
    begin
     SnapProcHandle := CreateToolhelp32Snapshot(TH32CS_SNAPTHREAD, 0);
            if SnapProcHandle <> THandle(-1) then
            begin
              ThreadEntry.dwSize := Sizeof(ThreadEntry);
              Next := Thread32First(SnapProcHandle, ThreadEntry);
              while Next do
              begin
                //如果该线程的进程ID是本进程的
                if (ThreadEntry.th32OwnerProcessID =GetCurrentProcessId)then 
                memo1.lines.add(inttostr(ThreadEntry.th32ThreadID)); 
                Next := Thread32Next(SnapProcHandle, ThreadEntry);
              end;
              CloseHandle(SnapProcHandle);
            end;
    end;
      

  2.   

    上面的memo1列出了所有线程
     如果只要数目
     那就
     var 
     j:integer=0; if (ThreadEntry.th32OwnerProcessID =GetCurrentProcessId)then 
     begin
     memo1.lines.add(inttostr(ThreadEntry.th32ThreadID));
     inc(j);
     end;  J就是总数