提升进程权限

 1 /************************************************************************/  
2 /* 函数说明:提升进程权限
3 /* 参 数:进程句柄、权限名称
4 /* 返 回 值:成功返回TRUE,否则返回FALSE
5 /************************************************************************/
6 BOOL EnableDebugPrivilege(IN HANDLE hProcess, IN LPCTSTR lpPrivilegeName)
7 {
8 HANDLE hToken;
9 LUID sedebugnameValue;
10 TOKEN_PRIVILEGES tkp;
11
12 if (!OpenProcessToken(hProcess, TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &hToken))
13 {
14 return FALSE;
15 }
16
17 if (!LookupPrivilegeValue(NULL, lpPrivilegeName, &sedebugnameValue))
18 {
19 CloseHandle(hToken);
20 return FALSE;
21 }
22
23 tkp.PrivilegeCount = 1;
24 tkp.Privileges[0].Luid = sedebugnameValue;
25 tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;
26
27 if (!AdjustTokenPrivileges(hToken, FALSE, &tkp, sizeof(tkp), NULL, NULL))
28 {
29 CloseHandle(hToken);
30 return FALSE;
31 }
32
33 return TRUE;
34 }
posted @ 2012-03-16 19:56  小白菜盼末日  阅读(208)  评论(0)    收藏  举报