Skocz do zawartości
AdamTko

dirmon.exe - jak przechwycić zdarzenie i wywołać inny programik?

Rekomendowane odpowiedzi

Gotowe programiki do monitorowania zawartości katalogu (Watch4Folder, theFolderSpy) w zasadzie działają, ale nie potrafią prawidłowo skorzystać z maski. Ja chcę szukać plików 201*.pdf, a pierwszy z nich w ogóle nie umie masek, za to drugi maskę 201*.pdf rozumie jako *201*.pdf. Więc w zasadzie oba wywołują zbyt często program modyfikujący nazwy zgodnie z moją potrzebą.

 

Znalazłem za to w pakiecie nttoolkit programik dirmon.exe który prawidłowo robi detekcję i w konsoli wyrzuca taki fajny log:

C:\Users\adam>c:\nttoolkit\dirmon.exe /d c:\test\ /i 201*.pdf

---------------------------------------------------------------

Directory Monitor v1.0 by NETIKUS.NET ltd [ compiled on Oct 19 2007 ]

(support@netikus.net)

---------------------------------------------------------------

Monitors directories for write changes in real-time.

01/21/2013 20:00:27: -DELETED : 2013_12_0.pdf

01/21/2013 20:00:43: +ADDED : 201xyz.pdf

01/21/2013 20:01:02: -RENAMED [OLD]: 201xyz.pdf

01/21/2013 20:01:02: +RENAMED [NEW]: 201xyz156.pdf

1 filtered file transactions not shown.

C:\Users\adam>

 

Zdarzenia rozpoznaje prawidłowo, ale za diabła nie potrafię tego "wychwycić" i wywołać inny program. Po prostu log idzie na konsolę i już. Nie wiem jak mogę z tego skorzystać? Poproszę o sugestie.

 

Pozdrawiam, Adam

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi

To by trzeba było jakiś skrypt napisać :lol:

 

A może: File Watcher Simple

http://sourceforge.n...ts/fwutilities/

 

Wiki:

http://sourceforge.n..._Watcher_Simple

 

Nakręciłem krótki filmik:

post-24-0-93240800-1358859881_thumb.gif

 

post-24-0-47357800-1358859892_thumb.png

 

Posiada dość potężne opcje akcji, dodanie argumentu do wywoływanego programu, wywoływanie programu z określonej modfikacji: zmiana wielkości, modyfikacji i wiele więcej. Może Ci podpasuje?

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi

Co do skryptu - zapewne tak. Próbowałem na początek przekierować

C:\Users\adam>c:\nttoolkit\dirmon.exe /d c:\test\ /i 201*.pdf > log.txt

i nic. Log pusty. No to się poddałem od razu, Może coś z rurą | by zadziałało, ale nie jestem biegły w linii poleceń bo nauczyłem się tego dopiero w wieku jak już raczej się człek kapciami i ogródkiem powinien zajmować i dawać się na spacery przez psa wyprowadzać. :)

 

Za to super się zapowiada ten File Watcher Simple na pierwszy rzut oka. Przyjrzę się dziś i dam znać. Z tego linku na wiki co podałeś wynika jasno, że się da zrobić to co potrzebuję. A jeśli programik jest stabilny i nie zajmuje wielkich zasobów to z przyjemnością się zastosuję do rady. Jak tylko wybadam.

 

Edit: już jedno odpalenie mam za sobą i już mi się podoba. Jak dla mnie ma za dużo opcji i póki co znacznej części ich nie kumam. Ale na już:

- prawidłowo łapie maski

- prawidłowo łapie iwenty

Teraz mi już zostało tylko wywołać kolejny podprogramik i będzie pozamiatane jak mi się wydaje. Aaaa, no i jakoś muszę odpalić ten program z odpowiednim zestawem parametrów przy starcie systemu.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi

Też próbowałem przekierować, ale sam DirMon się wykrzaczał czy > lub nadpisaniem istniejącego >>.

Sprawdzałem w PowerShellu dodawając Tee-Object, ale i to również nie przyniosło rezultatu:

 

http://ss64.com/ps/tee-object.html

 

Możesz jeszcze spróbować Wtee (WinTee):

 

https://www.fixitpc.pl/topic/192-konsolowe-inne-spoza-kategorii/

Tym akurat nie sprawdzałem.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi

To zła droga IMHO. Tytułowy DirMon byłby interesujący z racji prostoty i prawidłowego maskowania. Ale jak mam do tego użyć/naumieć się kolejnego narzędzia, potem to oskryptować jeszcze.... nope. To aż się prosi o problemy. A zadanie jest w sumie banalne. Więc póki co działa już to co mam, a jak się zapoznam bliżej z tym FoleWatcherSimple to zaraz się przestawię.

 

Dzięki za pomoc.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Gość
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.

  • Ostatnio przeglądający   0 użytkowników

    Brak zarejestrowanych użytkowników przeglądających tę stronę.

×
×
  • Dodaj nową pozycję...