Entwickler-Ecke

Windows API - Prozess auf Dateiänderungen und -erstellungen überwachen


hw23 - Sa 22.04.06 16:47
Titel: Prozess auf Dateiänderungen und -erstellungen überwachen
Hi!

Ich möchte einen speziellen Prozess überwachen und alle Dateien, die von ihm erstellt oder verändert wurden, auflisten.

Dafür habe ich mir bereits mal "SHChangeNotify" angesehen, was mir auch einfach alle Veränderungen auflisten kann, wo ich jedoch nicht die Herkunft der Änderungen betrachten kann. Gibt es da eine API Ansatzmöglichkeit?

Ansonsten hab ich mir überlegt das ganze mit Hooks zu realisieren. Jedoch hab ich da das Problem, dass mir auch dabei die Ansatzmöglichkeit fehlt, da ich mich in der Hookprogrammierung nicht sonderlich auskenne, und alle mir bekannten Tutorials sich auf die Erstellung von Keyloggern oder das Abfragen der MAusposition beschränken. Habt ihr da einen Tipp?

Danke im Voraus!


Delete - Mo 24.04.06 03:23

Ohne lange nachgedsacht zu haben, würde ich so aus dem Bauch heraus sagen, dass das nach einem Dateisystemfiltertrieber klingt.


0xCC - Mo 24.04.06 04:27

wenn du die änderungen am fs durch einen bestimmten prozess protokollieren willst hast du nur 2 möglichkeiten:
1) Suche in: Delphi-Forum API HOOK auf CreateFileW in kernel32.dll oder Nt/ZwCreateFile in ntdll.dll (halte nach der uallcollection ausschau, meines wissens ist für CreateFile ein demo dabei)
2) kernel(filter)treiber
beides erfordert fundierte kenntnisse der windows api sowie der programmierung ohne delphi-strings

oder du verwendest einfach filemon von sysinterals.com.


Delete - Mo 24.04.06 08:05

Und wenn es um Treiberprogrammierung geht natülich Efahrung in C, Erfahrung mit dem DDK und der Treiberprogrammierung ins besondere.