检测程序是否以完全pipe理员权限运行

我需要确定我的程序是否具有完整的pipe理员权限。 我的意思是如果开启了uac(对于win vista / 7),我需要确定程序是否确实具有pipe理权限(如用户右键单击并select“以pipe理员身份运行”),而不受uac的限制。 我如何在C ++中做到这一点?

One Solution collect form web for “检测程序是否以完全pipe理员权限运行”

  • Win9x:每个人都是“pipe理员”
  • 在DOMAIN_ALIAS_RID_ADMINS SID中的 NT4: OpenThreadToken / OpenProcessToken + GetTokenInformation(…,TokenGroups,…)
  • 2000+:DOMAIN_ALIAS_RID_ADMINS SID上的OpenThreadToken / OpenProcessToken + CheckTokenMembership

其他的select是: IsUserAnAdmin或AccessCheck

在令牌中检查TOKEN_ELEVATION *内容对于testing当前进程不是必需的,但是如果您需要查明用户是否可以提升,因为它们具有拆分令牌等。

  • 如何删除Windows 7上的Java程序的标题栏和任务栏图标?
  • 跳过窗口被捕获
  • 我如何决定是否将ATL,MFC,Win32或CLR用于新的C ++项目?
  • 有什么办法来检测Windows中的监视器状态(开或关)?
  • 在Windows中查找未公开的API
  • 在Windows上构build带有SSL支持的libcurl
  • 用C ++ Win32创build一个透明的窗口
  • 在.NET中相当于ShellExecute
  • 控制台应用程序中的全局热键
  • Windows线程:_beginthread与_beginthreadex与CreateThread C ++
  • 用Win32程序中的main()函数replaceWinMain()