有谁知道如果得到系统托盘区中当前正在运行的所有进程?
或者在系统的所有进程中,判断出,哪些进程是属性把窗口缩放在系统托盘区的?

解决方案 »

  1.   

    呀,才看到是虫子的帖子:)
    不好意思,很久没有用温到死开发了,有空帮你看看再回。
    这里帮你顶一下,希望能有其他达人现身,顺便祝merry X'mas
      

  2.   

    呵呵,我也很久没有来CSDN了,呵呵,原来的老兄弟们还在这里混呀,呵呵,圣诞快乐!
      

  3.   

    FSnapshotHandle:=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
          //由 CreateToolhelp32Snapshot  返回系统快照句柄;
          //指向 ProcessEntry32 结构
       FProcessENtry32.dwSize:=sizeof(FProcessENtry32);
          //获取该结构体大小
       ContinueLoop:=Process32First(FSnapshotHandle,FProcessEntry32);
          //获得第一个进程的信息
       while integer(ContinueLoop)<>0 do    //获取进程信息成功
         begin
            NewItem:=ListView1.Items.Add;
                 if ProHan.Checked then
            NewItem.Caption:=FProcessENtry32.szExeFile;
                 if ProId.Checked then
            NewItem.SubItems.Add(IntToStr(FProcessEntry32.th32ProcessID));
                 if ProParID.Checked then
            NewItem.SubItems.Add(IntToStr(FProcessEntry32.th32ParentProcessID));
                 If ProThrNmu.Checked then
            NewItem.SubItems.Add(IntToStr(FProcessEntry32.cntThreads));
                 if ProPriClaBas.Checked then
            NewItem.SubItems.Add(IntToStr(FProcessEntry32.pcPriClassBase));
            //将信息加入列表
            ContinueLoop:=process32Next(FSnapshotHandle,FProcessEntry32);
            //查找下一个进程
         end;
         CloseHandle(FSnapshotHandle);
             //关闭快照列表