Entwickler-Ecke

Windows API - Benachrichtigung bei Dateizugriff


ZeitGeist87 - Fr 23.03.07 13:09
Titel: Benachrichtigung bei Dateizugriff
Hallo!

Für mein aktuelles Projekt LANGuard [http://www.zeitgeist-development.com/download/splash2.jpg] bin ich auf der Suche nach einer Lösung für folgendes Problem:

Wie kann ich es bewerkstelligen, dass ich bei Dateizugriff auf meine Freigaben eine Nachricht bekomme?

Das Ganze etwas detailierter:

Ich gebe Verzeichnisse frei, möchte dies aber nur explizit für Benutzer A.
IP-Adressen bekommm ich über meine Firewalling-Funktion ohne Probleme.
Denkt sich Benutzer B jetzt "Ach wie toll, das kopier ich mir auch" und fängt munter an zu kopieren, möchte ich eine Meldung/Notify bekommen, aus der hervorgeht, dass Benutzer B nun kopieren möchte. Kopieren ist ja im Prinzip nichts anderes als ein Dateizugriff, und CreateFile() allein zu hooken erscheint mir als nicht effizient.
Verzeichnisänderungen (Erstellen, Verändern, Löschen, etc) stelle ich bereits in einem Thread für die Freigaben fest.

Darum meine eigentliche Frage:

Weiß jemand eine Möglichkeit, wie ich über Dateizugriffe (in überwachten Ordnern) benachrichtigt werden kann?

Für Denkanstösse wäre ich sehr dankbar!


LG
Stefan


Narses - Fr 23.03.07 13:19

Moin!

user profile iconZeitGeist87 hat folgendes geschrieben:
Ich gebe Verzeichnisse frei, möchte dies aber nur explizit für Benutzer A.

Wozu hat Windows eigentlich eine Benuterverwaltung und ein Dateisystem mit Berechtigungen... ? :gruebel:

cu
Narses


ZeitGeist87 - Fr 23.03.07 13:23

user profile iconNarses hat folgendes geschrieben:
Moin!

user profile iconZeitGeist87 hat folgendes geschrieben:
Ich gebe Verzeichnisse frei, möchte dies aber nur explizit für Benutzer A.

Wozu hat Windows eigentlich eine Benuterverwaltung und ein Dateisystem mit Berechtigungen... ? :gruebel:

cu
Narses


Hey Narses!

Auf diese Antwort hab ich gewartet :)
Ich möchte es aber nicht in die Hände von Windows legen!
An und für sich ist der Einwand berechtigt, aber mach das mal unter Win98 :)
Warum und weshalb ich es machen möchte ist für das Problem irrelevant!

LG
Stefan


wolke - Fr 23.03.07 16:18
Titel: Re: Benachrichtigung bei Dateizugriff
user profile iconZeitGeist87 hat folgendes geschrieben:

Weiß jemand eine Möglichkeit, wie ich über Dateizugriffe (in überwachten Ordnern) benachrichtigt werden kann?


An application can monitor the contents of a directory and its subdirectories by using change notifications. (...) [http://msdn2.microsoft.com/en-us/library/aa365261.aspx]

Zu dem Thema findest du hier im Forum auch einige Topics. Ob das ganze auch bei Zugriffen übers Netzwerk funktioniert musst du rausfinden :)