Zum Inhalt springen

Änderungen an Datei via FileSystemWatcher mittels EventLog festhalten


Empfohlene Beiträge

Geschrieben

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

Geschrieben

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.

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

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...