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

Вниз

Знаю PID процесса как получить имя пользователя запустившего процесс   Найти похожие ветки 

 
bobr ©   (2002-01-21 17:08) [0]

Знаю PID процесса как получить имя пользователя запустившего процесс


 
Anonymous   (2002-01-21 23:40) [1]

OpenProcess -> OpenProcessToken -> GetTokenInformation(TokenUser) -> LookupAccountSid


 
Bobr ©   (2002-01-22 12:02) [2]

Пытаюсь сделать это следующим образом, но что-то делаю не так - подскажите:

const TokenSize=800;
Var HNWD, _HNWD:THandle;
pTokenInfo:PTokenUser;
ReturnLen:Cardinal;
userbuffer:pchar;
usersize:dword;
compbuffer:pchar;
compsize:dword;
begin
GetMem(pTokenInfo,TokenSize);
HNWD:=OpenProcessPROCESS_QUERY_INFORMATION,FALSE,PID);
OpenProcessToken(HNWD,TOKEN_ALL_ACCESS,_HNWD);
GetTokenInformation(_HNWD,TokenPrivileges,pTokenInfo,TokenSize,ReturnLen);
LookupAccountSid(nil,pTokenInfo.SID.Sid,userbuffer,usersize,compbuffer,compsize,eUse);
userbuffer := PChar(GlobalAlloc(GMEM_FIXED,usersize));
compbuffer := PChar(GlobalAlloc(GMEM_FIXED,compsize));
LookupAccountSid(nil,pTokenInfo.SID.Sid,userbuffer,usersize,compbuffer,compsize,SID_NAME_USE);

showmessage(userbuffer);
showmessage(compbuffer);

FreeMem(pTokenInfo);

Где

PTokenUser = ^TTokenUser;
_TOKEN_USER = record
SID: SID_AND_ATTRIBUTES
end;
{$EXTERNALSYM _TOKEN_GROUPS}
TTokenUSER = _TOKEN_USER;
TOKEN_USER = _TOKEN_USER;
{$EXTERNALSYM TOKEN_GROUPS}


 
VuDZ ©   (2002-01-22 21:02) [3]

посмотри тут http://www.sources.ru/msdn/howto/q111544.shtml



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

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

Наверх




Память: 0.47 MB
Время: 0.016 c
7-67018
Shadow77
2001-12-17 16:46
2002.03.21
MMSYSTEM274 Используемое устройство MCI...


1-66916
Random
2002-03-06 16:14
2002.03.21
Как создать панель инструментов


1-66833
Baz
2002-03-04 05:12
2002.03.21
Странное поведение при пошаговом прогоне


1-66877
Андрей_Ш
2002-03-05 17:37
2002.03.21
Временная задержка


3-66761
AndrewK
2002-02-20 17:22
2002.03.21
DBGrid