Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: WinAPI и системное программирование > Просмотр журнала Windows


Автор: Domoffou 26.1.2009, 23:32
Здравствуйте.
Необходимо определить запущенные процессы (и закрытые).
Решил пойти таким путем:
в панели управления - администрирование - локальная политика безопасности

в опции аудита процессов выбрал успех и отказ

теперь в журнале "Безопасность" отображается инфа о закрытых и запущенных процессах.

Каким образом можно вытащить эту инфу оттуда?
У меня получилось только добраться до списка:

Код

procedure TForm1.Button3Click(Sender: TObject);
var
h, dwread, dwneeded: dword;
p, src:pointer;
b:PTEventLogRecord;
s:string;
begin
h:=OpenEventLog(nil, PChar('Security'));
if h<>INVALID_HANDLE_VALUE then
begin
p:=AllocMem(1024*64);
src:=p;
while ReadEventLog(h, 4 or 1, 0, p, 1024*64, dwread, dwneeded) do
begin
while dwread>0 do
begin
begin
b:=p;
s:='record number: '+IntToStr(b^.RecordNumber)+#13#10 + ' event id: ' + IntToHex(b^.EventID,8) +#13#10 + ' event type: '+IntToStr(b^.EventType);
Memo1.Lines.Add(s);
Memo1.Lines.Add('-----------------');
end;
dwread:=dwread-b^.Length;
p:=pointer(integer(p)+b^.Length);
end;
p:=src;
ZeroMemory(p, 1024*64);
end;
FreeMem(src);
CloseEventLog(h);
end;
end;


Не могу найти информацию о самом процессе и конкретно о действии, например program.exe - запуск, fiefox.exe - остановка

Автор: CodeMonkey 27.1.2009, 00:45
http://delphikingdom.ru/asp/viewitem.asp?catalogid=530.

Автор: Bose 27.1.2009, 05:33
В библиотеке http://sourceforge.net/projects/jvcl/ есть компонент TJvNTEventLog, который читает NT EventLog. Можно посмотреть как это сделано там.

Автор: CodeMonkey 27.1.2009, 12:59
Цитата(Bose @  27.1.2009,  05:33 Найти цитируемый пост)
В библиотеке JVCL есть компонент TJvNTEventLog, который читает NT EventLog. Можно посмотреть как это сделано там.

...балин, как же это я так облажался....  про JVCL забыл...

Автор: Domoffou 27.1.2009, 22:54
Спасибо, господа.
Буду разбираться smile

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)