Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Ordner im Netzwerk überwachen, ohne das Programm abschmiert (https://www.delphipraxis.net/76637-ordner-im-netzwerk-ueberwachen-ohne-das-programm-abschmiert.html)

torud 7. Sep 2006 11:20


Ordner im Netzwerk überwachen, ohne das Programm abschmiert
 
Hallo Wissende,

ich stehe vor dem Problem, dass ich von einem Rechner aus einen Ordner auf einem anderen Rechner überwachen muss. Dabei passiert folgendes. Wenn in diesem Ordner eine Datei neu geschrieben wird oder hinzugefügt wird, muss ich diese einlesen und parsen und den Inhalt weiter verarbeiten. Ich überprüfen den Ordner mit einem Timer jede Sekunde.

Das klappt bisher schon ganz gut. Nun soll ich aber noch sicherstellen, dass das Programm weiterhin händelbar bleibt, wenn die Netzwerkverbindung weg ist.

Wie kann ich das lösen?

torud 27. Sep 2006 08:15

Re: Ordner im Netzwerk überwachen, ohne das Programm abschmi
 
Hallo Leute,

leider besteht noch immer das Problem. Wer kann mir helfen, oder einfach nur nen Tipp geben, damit ich meine Suche vielleicht optimieren kann?

freak4fun 27. Sep 2006 08:20

Re: Ordner im Netzwerk überwachen, ohne das Programm abschmi
 
Was passiert denn, wenn das Netzwerk weg ist? Normalerweise wird doch versucht auf das Netzwerk zuzugreifen und wenn es nicht geht, gibt es eine Meldung. KAnnst du das bei deinem Programm nicht genauso machen? Also die Abfrage im Netzwerk zeitl. Begrenzen und wenn der Netzwerkpfad nicht gefunden wurde eine Meldung ausgeben?

MfG
freak

kalmi01 27. Sep 2006 12:26

Re: Ordner im Netzwerk überwachen, ohne das Programm abschmi
 
Hi torud,

gegen das "hängen" Deines Prog's, wenn es auf den nicht vorhandenen
Netzwerkpfad zugreifen will, kannst Du nichts machen.
Dein Prog wartet auf Antwort von Windows und dieses wiederum
sucht das Netzwerk nach dem Pfad ab.

ich habe es mit diese Kompo gelöst:
Delphi-Quellcode:
// -----------------------------------------------------------------------------
// Component Name: TDirectoryWatch                                           .
// Module:         DirWatch                                                  .
// Description:    Implements watching for file changes in a designated      .
//                  directory (or directories).                               .
// Version:        1.3                                                        .
// Date:           28-FEB-2003                                                .
// Target:         Win32, Delphi 3 - Delphi 6                                 .
// Authors:        Angus Johnson, angusj-AT-myrealbox.com                    .
//                  Some portions of code has been copied from the Drag & Drop .
//                  Component Suite which was co-authored with Anders Melander .
// Copyright:      © 2003 Angus Johnson                                      .
//                                                                             .
// Usage:          1. Add a TDirectoryWatch component to your form.          .
//                  2. Set its Directory property                             .
//                  3. If you wish to watch its subdirectories too then set   .
//                  the WatchSubDir property to true                          .
//                  4. Assign the OnChange event                              .
//                  5. Set Active to true                                     .
// -----------------------------------------------------------------------------
funzt ganz gut.

Luckie 27. Sep 2006 12:37

Re: Ordner im Netzwerk überwachen, ohne das Programm abschmi
 
Christian Seehase und ich haben dafür mal eine Klasse geschrieben: http://www.michael-puff.de/dirindex....phi/Sonstiges/ -> MpuReadDirectoryChangesCls.pas

volkerw 27. Sep 2006 15:25

Re: Ordner im Netzwerk überwachen, ohne das Programm abschmi
 
Habe gerade etwas bei Torry entdeckt, das hilfreich sein könnte: ATFileNotification
Gruß Volker

Christian Seehase 27. Sep 2006 18:15

Re: Ordner im Netzwerk überwachen, ohne das Programm abschmi
 
Moin Volker,

ich habe mir die mal angeschaut.
Sie arbeitet mit FindFirstChangeNotification (usw.), was den Vorteil hat, dass man nicht auf ein NT-basiertes Windows angewiesen ist, dies dann aber in Verbindung mit dem Nachteil, dass man selber suchen muss, was sich geändert hat.
(das ist natürlich auch Geschmackssache).


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:30 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz