Win7普通用户下提升注册表权限
2013-09-13 11:34
951 查看
同样的问题,在普通用户下访问注册表会出现无权限问题。此时的想法是在自己的软件注册键提升其权限,以方便用户修改,包括密码等一些信息。
代码如下:(PS:按照预计的想法是提升其权限后,软件运行结束后主恢复用户本身权限,但结果只提升了,没能恢复到原来的权限。知道的牛牛请多指点下,WIN7权限问题感觉好深奥)。
代码如下:(PS:按照预计的想法是提升其权限后,软件运行结束后主恢复用户本身权限,但结果只提升了,没能恢复到原来的权限。知道的牛牛请多指点下,WIN7权限问题感觉好深奥)。
BOOL SetRegPrivilege(HKEY hKey, LPSTR SamName) { DWORD dwRet; PACL pNewDacl = NULL, pOldDacl = NULL; PSECURITY_DESCRIPTOR pSD = NULL; EXPLICIT_ACCESS ea; // 获取SAM主键的DACL dwRet = GetNamedSecurityInfo(SamName, SE_REGISTRY_KEY, DACL_SECURITY_INFORMATION, NULL, NULL, &pOldDacl, NULL, &pSD); if (dwRet != ERROR_SUCCESS) { return FALSE; } // 创建一个ACE,允许Everyone完全控制对象,并允许子对象继承此权限 ZeroMemory(&ea, sizeof(EXPLICIT_ACCESS)); BuildExplicitAccessWithName(&ea, "Administrators", KEY_ALL_ACCESS, SET_ACCESS, SUB_CONTAINERS_AND_OBJECTS_INHERIT); // 将新的ACE加入DACL dwRet = SetEntriesInAcl(1, &ea, pOldDacl, &pNewDacl); if (dwRet != ERROR_SUCCESS) { return FALSE; } // 更新SAM主键的DACL dwRet = SetNamedSecurityInfo(SamName, SE_REGISTRY_KEY, DACL_SECURITY_INFORMATION, NULL, NULL, pNewDacl, NULL); if (dwRet != ERROR_SUCCESS) { return FALSE; } //释放资源 if (pNewDacl) LocalFree(pNewDacl); // 还原SAM主键的DACL // if (pOldDacl) // SetNamedSecurityInfo(SamName, SE_REGISTRY_KEY, DACL_SECURITY_INFORMATION, // NULL, NULL, pOldDacl, NULL); if (pOldDacl) LocalFree(pOldDacl); if (pSD) LocalFree(pSD); return TRUE; }
相关文章推荐
- 如何在不提升用户权限的情况下,使普通用户执行xp_cmdshell存储过程2008-11-26 14:09:29SQL Server 2005 及之后的版本
- Linux环境下提升普通用户权限(sudo)
- Linux环境下提升普通用户权限(sudo)
- 利用ShellExecuteEx手动提升用户特权,以管理员权限来运行程序。win7会有UAC弹窗
- WIN7普通用户下修改文件夹权限
- 如何在不提升用户权限的情况下,使普通用户执行xp_cmdshell存储过程
- Ubuntu下怎么将普通的用户的权限提升到root权限
- 怎样把一个普通用户权限提升为跟root一样?
- 利用注册表使普通用户夺取超级管理员权限!!
- Ubuntu下如何将普通用户提升到root权限
- 如何在不提升用户权限的情况下,使普通用户执行sp_OACreate存储过程
- 域普通用户临时提升权限
- [转]如何在不提升用户权限的情况下,使普通用户执行xp_cmdshell存储过程
- Ubuntu下关于将普通用户权限提升为root的问题
- 如何在不提升用户权限的情况下,使普通用户执行xp_cmdshell存储过程
- Linux中把普通用户提升为root用户权限
- Win7下普通权限进程动态提升权限
- 如何在不提升用户权限的情况下,使普通用户执行xp_cmdshell存储过程
- [转]如何在不提升用户权限的情况下,使普通用户执行xp_cmdshell存储过程
- win7 提升windows服务权限使非管理员用户可以控制windows服务的开启和关闭