jjzjj

AdministratorsGroup

全部标签

c++ - 如何检查用户是否是 Windows 7 中的管理员?

我找到了这个link在msdn中检查用户是否是管理员。当进程提升(以管理员身份运行)时,它在某些win7机器上工作正常,但我发现一些机器(一些win2008)无法正常工作!这是解决问题的正确方法吗??BOOLIsUserAdmin(VOID){BOOLb;SID_IDENTIFIER_AUTHORITYNtAuthority=SECURITY_NT_AUTHORITY;PSIDAdministratorsGroup;b=AllocateAndInitializeSid(&NtAuthority,2,SECURITY_BUILTIN_DOMAIN_RID,DOMAIN_ALIAS_RID

c - 如何检查指定用户是否是本地计算机上的管理员?

我想知道用户是否是PC上的管理员?我找到了执行此操作的代码片段,但我遇到了问题。这段代码的问题是,如果启动进程的用户是否具有管理员权限,则此函数将返回。但我想查询特定用户是否具有管理员权限。我能以某种方式做到这一点吗?这很重要,因为我的应用程序将在SYSTEM帐户下运行,因此它总是返回用户是管理员,但我想知道登录用户是否是管理员?代码片段:BOOLIsUserAdmin(VOID)/*++RoutineDescription:ThisroutinereturnsTRUEifthecaller'sprocessisamemberoftheAdministratorslocalgroup.

c - 使用 CreateProcessWithTokenW() 从管理员帐户以非提升模式启动进程

我关注了FrankK.的proposedsolution用于从提升的用户进程启动普通用户进程。但是,我在使建议的解决方案起作用时遇到了一些困难(Win7x64Professional;“普通用户”进程是从具有管理权限的域帐户启动的)。流程创建代码如下所示:HANDLEprocessHandle=getProcessHandle("explorer.exe");if(OpenProcessToken(processHandle,MAXIMUM_ALLOWED,&hToken)){if(DuplicateTokenEx(hToken,MAXIMUM_ALLOWED,NULL,Securit