检测程序是否以完全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当前进程不是必需的,但是如果您需要查明用户是否可以提升,因为它们具有拆分令牌等。

  • malloc()与HeapAlloc()
  • 从C使用WinRT?
  • Windows API的最酷部分
  • 我如何运行需要提升和等待的subprocess?
  • 我如何自定义Windows窗体的系统菜单?
  • 定位C ++ 03时使用std :: basic_string <t>作为连续缓冲区是否合理?
  • 如何使透明背景的OpenGL渲染上下文?
  • 如何在Windows下的光标下获取单词?
  • 我在哪里可以find我的.emacs文件在Windows上运行的Emacs?
  • 如何从WPF应用程序使用FolderBrowserDialog
  • 在.NET中相当于ShellExecute