Announcement

Collapse
No announcement yet.

Festplattenüberwachung / Hooks ?

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Festplattenüberwachung / Hooks ?

    Ich möchte auf einem Windows NT 4.0 - Rechner die Ereignisse einer großen Festplatte, mit vielen Verzeichnissen überwachen. Ein Verzeichnis enthält sogar ca. 65000 Dateien.
    Am besten wäre es, wenn bei jedem Ereignis auf der Festplatte mein Programm, daß permanent im Hintergrund laufen sollte, benachrichtigt würde. Z.B. das Einfügen, Ändern und Löschen von Dateien.
    Weiß jemand eine Weg ?

    mfg, Ronald

  • #2
    Hallo Ronald,<br>

    das win32 API stellt mit den Routinen FindFirstChangeNotification()/ FindNextChangeNotification() die Möglichkeit zur Verfügung, auf Änderungen in einem Verzeichnis zu reagieren. Sie liefern ein Handle zurück, das an WaitForSingleObject() übergeben werden kann. WaitForSingleObject() "hängt" solange, bis eine Aktion im überwachten Verzeichnis stattfindet.<br>

    Das Problem ist jedoch, dass man zwar erfährt, dass sich etwas geändert hat, aber nicht welche Dateien es betrifft.<br>
    Soweit ich weiss, kann man diese Information erst ab dem W2K-API ermitteln.<br>

    mfg, Thoma

    Comment


    • #3
      Hallo zusammen,

      es gibt die Funktion "ReadDirectoryChangesW", welche als Rückgabe auch den Dateinamen angibt. Laut MS- DOku steht diese Funktion auch unter NT4 (R?) zur Verfügung. Mann kann sogar eine callback funktion benutzen, hört sich also recht gut an. Ich habe das Ding leider noch nicht zum Laufen bekommen.
      Wenn jemand hier schon weiter sein sollte, wäre ich für Info's dankbar

      mfg Karste

      Comment


      • #4
        Hallo ihr beiden,

        euch beiden kann geholfen werden. Schaut doch mal in den folgenden Thread:
        <a href="/webx?50@@.ee8a353">Frank Kneffel "Erkennen, wenn Dateien in ein Verzeichnis kopiert werden" 29.07.2003 16:45</a>

        (Erkennen, wenn Dateien in Verzeichnis kopiert werden)

        Grüsse,
        Carste

        Comment

        Working...
        X