亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

獲取進程快照

系統(tǒng) 2414 0

點擊下載演示工程

獲取進程快照

      unit Unit1;



interface



uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, StdCtrls, TLHelp32, ComCtrls;



type

  TForm1 = class(TForm)

    Button1: TButton;

    ListView1: TListView;

    Button2: TButton;

    procedure Button1Click(Sender: TObject);

    procedure Button2Click(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;



var

  Form1: TForm1;



implementation



{$R *.dfm}



procedure TForm1.Button1Click(Sender: TObject);

var

  hSnapshot:THandle;

  pe32:TProcessEntry32;

  item:TListItem;

begin

    {function CreateToolhelp32Snapshot(dwFlags, th32ProcessID: DWORD): THandle;}

    {CreateToolhelp32Snapshot函數(shù)功能:函數(shù)為指定的進程、進程使用的堆[HEAP]、}

    {模塊[MODULE]、線程[THREAD])建立一個快照[snapshot]。 }

    {參數(shù)1說明:dwFlags}

    {TH32CS_INHERIT        聲明快照句柄是可繼承的。}

    {TH32CS_SNAPALL        在快照中包含系統(tǒng)中所有的進程和線程。}

    {TH32CS_SNAPHEAPLIST   在快照中包含在th32ProcessID中指定的進程的所有的堆。}

    {TH32CS_SNAPMODULE     在快照中包含在th32ProcessID中指定的進程的所有的模塊。}

    {TH32CS_SNAPPROCESS    在快照中包含系統(tǒng)中所有的進程。}

    {TH32CS_SNAPTHREAD     在快照中包含系統(tǒng)中所有的線程。}

    {參數(shù)2說明:th32ProcessID}

    {指定將要快照的進程ID。如果該參數(shù)為0表示快照當前進程。該參數(shù)只有在設置了}

    {TH32CS_SNAPHEAPLIST或者TH32CS_SNAPMODULE后才有效,在其他情況下該參數(shù)被忽略,}

    {所有的進程都會被快照。}

    {返回值:}

    {調(diào)用成功,返回快照的句柄,調(diào)用失敗,返回INVALID_HANDLE_VALUE 。 }

    hSnapshot:=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);

    if hSnapshot=0 then begin

        ShowMessage('創(chuàng)建進程快照失敗!');

        Abort();

    end;



    {PROCESSENTRY32結(jié)構(gòu)}

    {tagPROCESSENTRY32 = packed record

      dwSize: DWORD;              結(jié)構(gòu)的大小

      cntUsage: DWORD;            此進程的引用計數(shù)

      th32ProcessID: DWORD;       進程ID

      th32DefaultHeapID: DWORD;   進程默認堆

      th32ModuleID: DWORD;        進程模塊IDThis

      cntThreads: DWORD;          此進程開啟的線程計數(shù)

      th32ParentProcessID: DWORD; 父進程的ID

      pcPriClassBase: Longint;    線程優(yōu)先權(quán)

      dwFlags: DWORD;

      szExeFile: array[0..MAX_PATH - 1] of Char; 進程全名

    end;}

    pe32.dwSize:=SizeOf(PROCESSENTRY32);

    {function Process32First(hSnapshot: THandle; var lppe: TProcessEntry32): BOOL;}

    {Process32First 是一個進程獲取函數(shù),當我們利用函數(shù)CreateToolhelp32Snapshot()}

    {獲得當前運行進程的快照后,我們可以利用process32First函數(shù)來獲得第一個進程的句柄 }

    {參數(shù)1說明:hSnapshot}

    {CreateToolhelp32Snapshot獲取進程快照的句柄}

    {參數(shù)2說明:lppe}

    {TProcessEntry32創(chuàng)建的結(jié)構(gòu)體}

    {返回值:}

    {調(diào)用成功,返回True,調(diào)用失敗,返回False。 }

    if not Process32First(hSnapshot,pe32) then begin

        ShowMessage('獲取第一個進程失敗!');

    end;

    {function Process32Next(hSnapshot: THandle; var lppe: TProcessEntry32): BOOL;}

    {Process32Next是一個進程獲取函數(shù),當我們利用函數(shù)CreateToolhelp32Snapshot()}

    {獲得當前運行進程的快照后,我們可以利用Process32Next函數(shù)來獲得下一個進程的句柄}

    {參數(shù)1說明:hSnapshot}

    {CreateToolhelp32Snapshot獲取進程快照的句柄}

    {參數(shù)2說明:lppe}

    {TProcessEntry32創(chuàng)建的結(jié)構(gòu)體}

    {返回值:}

    {調(diào)用成功,返回True,調(diào)用失敗,返回False。 }

    ListView1.Clear;

    repeat

         item:=ListView1.Items.Add;

         item.Caption:=IntToStr(pe32.th32ProcessID);

         item.SubItems.Add(pe32.szExeFile);

         item.SubItems.Add(IntToStr(pe32.pcPriClassBase));

         item.SubItems.Add(IntToStr(pe32.th32ParentProcessID));

    until not Process32Next(hSnapshot,pe32);

end;



procedure TForm1.Button2Click(Sender: TObject);

begin

    ShowMessage('程序名稱:獲取進程快照'+#13+

                '版本:1.0.0.0'+#13+

                '日期:2010-10-4'+#13+

                '作者:江湖一鍵客'+#13+

                '業(yè)務聯(lián)系QQ:82530662');

end;



end.




    

獲取進程快照


更多文章、技術交流、商務合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 欧美一级毛片免费大片 | 这里只有久久精品视频 | 亚洲成在人网站天堂一区二区 | 日日干夜夜欢 | 一区一区三区产品乱码 | 亚洲精品欧美精品日韩精品 | 国产91在线精品福利 | 国产精品欧美亚洲 | 男女性高爱麻豆 | 久久77777 | 欧美日韩一区二区三区久久 | 午夜在线观看免费影院 | 91综合精品网站久久 | 亚洲午夜国产精品无卡 | 日韩在线中文字幕 | 精品久久久久久久久久久久久久久 | 午夜999| 国产小呦| 天天操穴| 国产精品久久亚洲不卡动漫 | 一区二区国产一区二区a4yy | 欧美日韩综合视频 | 91精品国产免费网站 | 久久国产综合 | 香蕉免费一级视频在线观看 | 欧美激情社区 | 欧美aa一级 | 国产精品久久久久久久免费 | 成人美女黄网站色大色费 | 全部免费毛片在线 | 黄色小视频免费看 | 免费一级a毛片在线播 | 久久 精品 | h在线观看免费 | 天天操天天操天天 | 网络色综合久久 | 日本精品高清一区二区不卡 | 99久热只有精品视频免费看 | 一区二区视频免费看 | 亚洲高清毛片 | 在线观看久久 |