| 
 | 
 
 
-  function EnableDebugPrivilege: Boolean;
 
 -   function EnablePrivilege(hToken: Cardinal; PrivName: string;
 
 -     bEnable: Boolean): Boolean;
 
 -   var
 
 -     TP: TOKEN_PRIVILEGES;
 
 -     Dummy: Cardinal;
 
 -   begin
 
 -     TP.PrivilegeCount := 1;
 
 -     LookupPrivilegeValue(nil, PChar(PrivName), TP.Privileges[0].Luid);
 
 -     if bEnable then
 
 -       TP.Privileges[0].Attributes := SE_PRIVILEGE_ENABLED
 
 -     else   
 
 -       TP.Privileges[0].Attributes := 0;
 
 -     AdjustTokenPrivileges(hToken, false, TP, SizeOf(TP), nil, Dummy);
 
 -     Result := GetLastError = ERROR_SUCCESS;
 
 -   end;
 
 - var
 
 -   hToken: Cardinal;
 
 - begin
 
 -   OpenProcessToken(GetCurrentProcess, TOKEN_ADJUST_PRIVILEGES, hToken);
 
 -   Result := EnablePrivilege(hToken, 'SeDebugPrivilege', true);
 
 -   CloseHandle(hToken);
 
 - end;
 
  复制代码 
 |   
 
 
 
 |