Win7下判断当前进程是否以管理员身份运行
判断当前程序是否以管理员身份运行,,代码如下:
#include <iostream>
#include <windows.h>
using namespace std;
// 判断当前程序是否以管理员身份运行。
bool IsProcessRunAsAdmin()
{
SID_IDENTIFIER_AUTHORITY NtAuthority = SECURITY_NT_AUTHORITY;
PSID AdministratorsGroup;
BOOL ret= AllocateAndInitializeSid(
&NtAuthority,
2,
SECURITY_BUILTIN_DOMAIN_RID,
DOMAIN_ALIAS_RID_ADMINS,
0, 0, 0, 0, 0, 0,
&AdministratorsGroup);
if (ret)
{
CheckTokenMembership(NULL, AdministratorsGroup, &ret);
FreeSid(AdministratorsGroup);
}
return ret== TRUE ;
}
int main()
{
cout << "Hello world!" << endl;
if(IsProcessRunAsAdmin())
{
cout<<"Run as administrator ........"<<endl;
}
else
{
cout<<"Run as Not Administrator ......"<<endl;
}
getchar();
return 0;
}
程序结果:
普通方式运行(直接双击运行):
以管理员方式运行(右键->以管理员身份运行)-->确定:
温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/67197.html
- 上一篇:【高德地图API】从头德国高中生JS API(三)覆盖物
- 下一篇:[C#基础] 类