码迷,mamicode.com
首页 > Windows程序 > 详细

【API】Windows 程序提升权限函数

时间:2018-02-02 17:13:40      阅读:257      评论:0      收藏:0      [点我收藏+]

标签:size   应用   window   eva   last   句柄   etl   pen   close   

BOOL EnableShutdownPrivilege() { HANDLE hProcess = NULL; HANDLE hToken = NULL; LUID uID = {0}; TOKEN_PRIVILEGES stToken_Privileges = {0}; hProcess = ::GetCurrentProcess(); //获取当前应用程序进程句柄 if(!::OpenProcessToken(hProcess,TOKEN_ADJUST_PRIVILEGES,&hToken)) //打开当前进程的访问令牌句柄(OpenProcessToken函数调用失败返回值为零) { return FALSE; } if(!::LookupPrivilegeValue(NULL,SE_SHUTDOWN_NAME,&uID)) //获取权限名称为"SeShutdownPrivilege"的LUID(LookupPrivilegeValue函数调用失败返回值为零) { return FALSE; } stToken_Privileges.PrivilegeCount = 1; //欲调整的权限个数 stToken_Privileges.Privileges[0].Luid = uID; //权限的LUID stToken_Privileges.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED; //权限的属性,SE_PRIVILEGE_ENABLED为使能该权限 if(!::AdjustTokenPrivileges(hToken,FALSE,&stToken_Privileges,sizeof stToken_Privileges,NULL,NULL)) //调整访问令牌里的指定权限(AdjustTokenPrivileges函数调用失败返回值为零) { return FALSE; } if(::GetLastError() != ERROR_SUCCESS) //查看权限是否调整成功 { return FALSE; } ::CloseHandle(hToken); return TRUE; }

【API】Windows 程序提升权限函数

标签:size   应用   window   eva   last   句柄   etl   pen   close   

原文地址:http://blog.51cto.com/383156647/2068198

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!