Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2013.03.22;
Скачать: CL | DM;

Вниз

Определение пользователя который запустил процесс   Найти похожие ветки 

 
denis_l   (2009-12-22 22:32) [0]

Есть приложение, в котором я получаю список процессов в виде дерева TreeView. О процессе знаю следующее:
1) Имя процесса (например Project1.exe)
2) ID процесса (PID)
Необходимо определить пользователя, от имени которого запущен процесс.
Если можно - пример!


 
Игорь Шевченко ©   (2009-12-22 23:51) [1]

Пример можно:


function SIDToName (const SID: PSID): string;
var
 Use: SID_NAME_USE;
 DomainName: array;0..1024] of char;
 DomainNameLength: DWORD;
 Name: array[0..1024] of char;
 NameLength: DWORD;
begin
 DomainNameLength := SizeOf(DomainName);
 NameLength := SizeOf(Name);
 if not LookupAccountSid (nil, SID, Name, NameLength, DomainName,
    DomainNameLength, Use) then
   Result := "***"
 else
   Result := Name;
end;

function GetUserName (ProcessId: Cardinal): string;
var
 AccessToken: THandle;
 SidInfo: PSIDANDATTRIBUTES;
 ReturnLength: DWORD;
 ProcessHandle: THandle;
begin
 Result := "";
 ProcessHandle := OpenProcess(PROCESS_QUERY_INFORMATION, false,
   ProcessId);
 if ProcessHandle = 0 then
   Exit;
 try
   if not OpenProcessToken(ProcessHandle, TOKEN_QUERY, AccessToken) then
     Exit;
   GetMem (SidInfo, 4096);
   try
     Win32Check(GetTokenInformation(AccessToken, TokenUser, SidInfo, 4096,
       ReturnLength));
     Result := SidToName(SidInfo^.Sid);
   finally
     FreeMem(SidInfo);
     CloseHandle(AccessToken);
   end;
 finally
   CloseHandle(ProcessHandle);
 end;
end;



Страницы: 1 вся ветка

Текущий архив: 2013.03.22;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.174 c
15-1330357950
CRLF
2012-02-27 19:52
2013.03.22
А что такое "порты 2В/1Р"


6-1258205484
Obsidiorex
2009-11-14 16:31
2013.03.22
Найти определенное слово в окне webbrowser


15-1350030766
AV
2012-10-12 12:32
2013.03.22
Вот как бы Вы поняли письмо


2-1332860610
Дмитрий С
2012-03-27 19:03
2013.03.22
SavePictureDialog и сохранение.


15-1344181528
brother
2012-08-05 19:45
2013.03.22
Посоветуйте игру