|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Доступ к журналу событий системы
Доброго времени суток, форумчане
Давно читаю форум, многим помогали ответы в темах. Однако сейчас я вынужден задать вопрос. По долгу рабочему столкнулся с задачей чтения журнала событий Windows 7 и Windows Server 2003-2008. В целом проблем не возникло. Все разделы читаются полностью и без проблем, кроме раздела Security - при его чтении ответ пустой. Просто пустой. Прошу вашей помощи, может посоветуете, как получить доступ к этому разделу. Заранее спасибо, и привожу свой код Код:
procedure TForm1.GetLogEvents; const wbemFlagForwardOnly = $00000020; var FSWbemLocator : OLEVariant; FWMIService : OLEVariant; FWbemObjectSet: OLEVariant; FWbemObject : OLEVariant; oEnum : IEnumvariant; iValue : LongWord; Insertion : array of String; I: integer; begin FSWbemLocator := CreateOleObject('WbemScripting.SWbemLocator'); FWMIService := FSWbemLocator.ConnectServer('localhost', 'root\CIMV2', '', ''); FWbemObjectSet:= FWMIService.ExecQuery('SELECT * FROM Win32_NTLogEvent Where LogFile="Security"','WQL',wbemFlagForwardOnly); oEnum := IUnknown(FWbemObjectSet._NewEnum) as IEnumVariant; while oEnum.Next(1, FWbemObject, iValue) = 0 do begin Form1.Memo1.Lines.Append(Format('Category %s',[String(FWbemObject.Category)])); Form1.Memo1.Lines.Append(Format('Computer Name %s',[String(FWbemObject.ComputerName)])); Form1.Memo1.Lines.Append(Format('EventCode %d',[Integer(FWbemObject.EventCode)])); Form1.Memo1.Lines.Append(Format('RecordNumber %d',[Integer(FWbemObject.RecordNumber)])); Form1.Memo1.Lines.Append(Format('Source Name %s',[String(FWbemObject.SourceName)])); Memo1.Lines.Append('------------------------------------------'); FWbemObject:=Unassigned; end; end; |