none
用c语言编写提升权限的代码问题???? RRS feed

  • 问题

  • BOOL EnableShutDownPriv()
    {
     HANDLE hToken = NULL;
     TOKEN_PRIVILEGES tkp = {0};
     if ( !OpenProcessToken( GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &hToken ) ) {
      return FALSE;
     }
     if ( !LookupPrivilegeValue( NULL, SE_SHUTDOWN_NAME, &tkp.Privileges[0].Luid ) ) {
      CloseHandle( hToken );
      return FALSE;
     }
     tkp.PrivilegeCount = 1;
     tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;

     if ( !AdjustTokenPrivileges( hToken, FALSE, &tkp, sizeof(TOKEN_PRIVILEGES), NULL, NULL ) ) {
      CloseHandle( hToken );
      return FALSE;
     }
     return TRUE;

    }

    求大神给讲解一下每句的作用,我是小白  很多都看不懂啊     求教了!!!

    2013年1月31日 5:05

答案

全部回复