使用psapi (process statusapi)函式
這是一種windows nt/2000下的方法。核心是使用enumprocesses函式。它的原型如下:
bool enumprocesses(
__out dword *lpidprocess, // 用於儲存所有程序的pid的陣列
__in dword cb, // 上述陣列的大小
__out dword *cbneeded // pid陣列中實際返回的(有效)位元組數
);當獲得系統中所有程序的pid後,我們就可以使用openprocess函式開啟指定的程序,再呼叫getmodulebasename獲得該程序的名字,呼叫enumprocessmodules列舉該程序呼叫的所有模組,呼叫getmodulefilenameex獲得模組檔案的全路徑。
#include
#include
#include
#include "psapi.h"
#pragma comment(lib,"psapi.lib")
void printprocessnameandid( dwordprocessid )
} //print the process name and identifier.
_tprintf(text("%s (pid: %u)\n"),szprocessname, processid );
closehandle(hprocess ); }
void main( )
獲取系統執行程序資訊 PSAPI介紹使用
網上資料顯示,有這麼三種方法可以用來獲取系統執行程序資訊 方法平台 備註psapi windows nt,windows2000,windows xp 獲取程序,驅動器,模組,記憶體和工作集資訊 效能計數器 windows nt,windows2000,windows xp 提供除程序清單以外的關於...
列舉程序控制代碼
目前正在做的專案進行效能測試,被通知程序控制代碼數已經到達2600多,心中甚是一驚,用procexp檢視控制代碼表得知,為型別為key的控制代碼,名稱為 registry hklm microsoft ctf assemblyitem.基本上得知是輸入法關聯的登錄檔項,而後用procmon監視登錄檔...
列舉程序資訊
1.psapi法 include include include include psapi.h pragma comment lib,psapi.lib int main numofprocess cbneededprocess sizeof dword for uint i 0 i3.wtsop...