VC獲取系統程序列表 查詢程序 關閉程序

2021-06-22 12:53:47 字數 1338 閱讀 5910

1、獲取系統程序列表

#include //宣告快照函式標頭檔案

......

processentry32 pe32;

pe32.dwsize=sizeof(pe32);

if(hprocesssnap==invalid_handle_value)

//遍歷程序快照。輪流顯示每個程序的資訊

cstring strprcnameid;

bool bmore=::process32first(hprocesssnap,&pe32);

while(bmore)

//清除snapshot物件

::closehandle(hprocesssnap);

2、查詢指定程序和關閉該程序

以下三個函式使用前先#include "psapi.h",然後setting->link 裡新增psapi.lib即可

//查詢指定程序

dword findprocess(tchar *strprocessname)

}return 0;

}// 此函式利用上面的 findprocess 函式獲得你的目標程序的id

// 用win api openporcess 獲得此程序的控制代碼,再以terminateprocess強制結束這個程序

void killprocess(tchar *strprocessname)

bool result = terminateprocess(hyourtargetprocess, 0);

if(!result)

return;

}// 在 windows nt/2000/xp 中可能因許可權不夠導致以上函式失敗

// 如以 system 許可權執行的系統程序,服務程序用本函式取得 debug 許可權即可,winlogon.exe 都可以終止哦 :)

bool getdebugpriv()

if ( ! lookupprivilegevalue( null, se_debug_name, &sedebugnamevalue ) )

tkp.privilegecount = 1;

tkp.privileges[0].luid = sedebugnamevalue;

tkp.privileges[0].attributes = se_privilege_enabled;

if (!adjusttokenprivileges( htoken, false, &tkp, sizeof tkp, null, null ) )

return true;

}

VC獲取系統程序列表 查詢程序 關閉程序

1 獲取系統程序列表 cpp view plain copy include 宣告快照函式標頭檔案 processentry32 pe32 pe32.dwsize sizeof pe32 handle if hprocesssnap invalid handle value 遍歷程序快照。輪流顯示每...

VC 查詢程序,關閉程序

findprocess 這個函式唯一的引數是你指定的程序名,如 你的目標程序 是 notepad.exe 返回值是該程序的id,失敗返回0 dword findprocess char strprocessname tprintf t n return 0 function errorforce 此...

VC 查詢程序,關閉程序

findprocess 這個函式唯一的引數是你指定的程序名,如 你的目標程序 是 notepad.exe 返回值是該程序的id,失敗返回0 cpp view plain copy dword findprocess char strprocessname tprintf t n return 0 f...