当前位置:首页 > Windows程序 > 正文

Win7下判断当前进程是否以管理员身份运行

2021-03-25 Windows程序

判断当前程序是否以管理员身份运行,,代码如下:


#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