Zum Inhalt springen

Änderungen an Datei via FileSystemWatcher mittels EventLog festhalten


Amstelchen

Empfohlene Beiträge

gegeben sei ein projekt der art WindowsService in VB.NET.

ServiceProcessInstaller sowie ServiceInstaller sind vorhanden, um den dienst via installutil des .NET-frameworks als windows-dienst im system einzurichten.

ebenfalls verwende ich zwei controls, namentlich einen FileSystemWatcher und ein EventLog, um bei spezifischen änderungen an dateien in definierten pfaden einen eventlog-eintrag zu generieren.

ich habe in ersterem definiert, bei den notify-arten FileName, DirectoryName, LastWrite das eventlog zu beschreiben.

allerdings kommt nun erschwerend hinzu, dass ein definierter eintrag in einem textuellen logfile, z.b. die zeichenkette "################", vom FileSystemWatcher beobachtet und gemeldet werden soll - es wird beispielsweise um 14:02 begonnen, das file zu befüllen, und um 19:17 scheint im textfile der obengenannte string auf.

ich bin mir nun nicht sicher, ob ich nicht in die problematik rutsche, dass das file von erstellenden prozess geöffnet ist und ich deshalb keine laufende überprüfung auf neue zeilen im file machen kann (da ich dafür das file ja offenhalten müsste).

gehe ich weiters richtig davon aus, dass ich - wenn der dienst die option "mit desktop interagieren" aktiviert hat - auch shell-befehle damit ausführen kann?

tipps zur herangehensweise gerne gesehen!

s'Amstel

Link zu diesem Kommentar
Auf anderen Seiten teilen

Du solltest über den Watcher an das WRITE-Ereignis rankommen und dort an die Infos Offset und Length.

D.h. jetzt weisst Du genau, dass was neues geschrieben wurde.

Wenn allerdings der schreibende Prozess das File aber mit ECLUSIVE geöffnet/erstellt hat, dann kommst Du soweit ich weiss nur ran, wenn Du nen Hook auf WriteFile() in den Prozess injectest.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...