为编写的Windows程序提升权限
            时间:2014-05-21 13:54:20  
            收藏:0  
            阅读:505
        
        
        1.要求以管理员身份运行
在vs工程属性中,Linker ---> Manifest File---> UAC Execution Level,选择requireAdministrator (/level=‘requireAdministrator‘)选项


BOOL WINAPI EnablePrivileges()  
{  
	HANDLE hToken;   
	TOKEN_PRIVILEGES tkp;   
	if (!OpenProcessToken(GetCurrentProcess(),   
		TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &hToken))   
		return( FALSE );   
	LookupPrivilegeValue(NULL, SE_DEBUG_NAME,   
		&tkp.Privileges[0].Luid);   
	tkp.PrivilegeCount = 1;   
	tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;   
	AdjustTokenPrivileges(hToken, FALSE, &tkp, 0,   
		(PTOKEN_PRIVILEGES)NULL, 0);   
	if (GetLastError() != ERROR_SUCCESS)   
		return FALSE;   
	return TRUE;  
} 
            评论(0)
        
        
        