EventLogQuery używa formatu XML do kwerendy dziennika zdarzeń. Możesz znaleźć schemat zapytania XML here.
Tekst Select element jest wyrażeniem XPath ocenianym względem serializacji XML zdarzeń.
Schemat dla zdarzenia XML here można znaleźć.
TimeCreated element ma atrybut SYSTEMTIME typu dateTime, więc format ten (w formacie XML zapytań) jest cokolwiek procesor XPath można analizować jako ważnego dateTime (zob 3.2.7.1. Lexical representation do specyfiki).
Na przykład można spróbować zapytać tak:
<QueryList>
<Query Id="0" Path="Application">
<Select Path="Application">*[System[TimeCreated[@SystemTime = '2011-12-20T00:42:53.000000000Z']]]</Select>
</Query>
</QueryList>
Które Analizuje i zwraca wartość, jeśli zdarzy się, że zdarzenie stworzony dokładnie w podanej dacie i czasie.
Również funkcja dateDiff jest funkcją rozszerzenia do protokołu Filter XPath, która przyjmuje jeden lub dwa argumenty typu SYSTEMTIME i zwraca liczbę, więc po prostu użyj liczby w wyrażeniu z tą funkcją (tak jak w twoim przykładzie).
P.S. Można użyć Podglądu zdarzeń systemu Windows (%windir%\system32\eventvwr.msc
), aby wejść i szybko ocenić XML zapytania wydarzenie przez creating Custom Views (Windows Vista, 7 i 2008 tylko):
Dziękuję bardzo. Twoja odpowiedź była ratunkiem. – user1106686
Cieszę się, że mogę pomóc. Proszę oznaczyć jako odpowiedź. –
dzięki świetny post. Chciałbym tylko dodać, że akceptowany tu format daty to dtObj.ToString ("O").dtObj to twój początkowy obiekt datetime. – sunder