AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi Herausfinden, wann sich ein Verzeichnis ändert
Thema durchsuchen
Ansicht
Themen-Optionen

Herausfinden, wann sich ein Verzeichnis ändert

Ein Thema von Catbytes · begonnen am 22. Jun 2005 · letzter Beitrag vom 23. Jun 2005
Antwort Antwort
Benutzerbild von Catbytes
Catbytes

Registriert seit: 7. Sep 2002
Ort: Heckendalheim
353 Beiträge
 
Delphi XE5 Enterprise
 
#1

Herausfinden, wann sich ein Verzeichnis ändert

  Alt 22. Jun 2005, 09:28
Hallo,

für ein Projekt muß ich wissen, was bei einem bestimmten Programm alles auf der Platte passiert.

Dazu habe ich mir mal FindFirstChangeNotification & Co. angeschaut.

Ist ja alles schön und gut, nur liefert mir das ganze immer nur Infos, daß was geändert wurde, nicht aber wo genau.

Ich bräuchte quasi sowas:

1. Scanne C:\ + SubDirs
2. Bei Änderung sag mir wo (Verzeichnis+Datei) und was (geändert, angelegt, gelöscht etc.) passiert ist.

Kann mir jemand helfen?
Catbytes
  Mit Zitat antworten Zitat
22. Jun 2005, 09:48
Dieses Thema wurde von "alcaeus" von "Object-Pascal / Delphi-Language" nach "Windows API / MS.NET Framework API" verschoben.
*hust* Ist eine Frage zur WinAPI *hust*
Basilikum

Registriert seit: 9. Aug 2003
389 Beiträge
 
Delphi 7 Professional
 
#3

Re: Herausfinden, wann sich ein Verzeichnis ändert

  Alt 22. Jun 2005, 10:17
schau Dir mal diese API an: MSDN-Library durchsuchenReadDirectoryChangesW
  Mit Zitat antworten Zitat
Benutzerbild von Catbytes
Catbytes

Registriert seit: 7. Sep 2002
Ort: Heckendalheim
353 Beiträge
 
Delphi XE5 Enterprise
 
#4

Re: Herausfinden, wann sich ein Verzeichnis ändert

  Alt 22. Jun 2005, 11:06
Zitat von Basilikum:
schau Dir mal diese API an: MSDN-Library durchsuchenReadDirectoryChangesW
Hmmmmm - sorry: ich erwähnte nicht, daß es mit allen Win-Betriebssystemen gehen sollte.

ReadDirectoryChangesW ist IMHO nur für NT und Konsorten.

Any other ideas?
Catbytes
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: Unterhaching
11.412 Beiträge
 
Delphi 12 Athens
 
#5

Re: Herausfinden, wann sich ein Verzeichnis ändert

  Alt 22. Jun 2005, 11:13
Der Artikel How To Detect File System Changes under Windows NT auf MSDN erklärt es recht gut. Allerdings hat die Funktion MSDN-Library durchsuchenFindFirstChangeNotification von Windows-Seite einen Bug, wenn mehrere Programme das gleiche Verzeichnis über das Netzwerk beobachten...

......
Daniel Lizbeth
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#6

Re: Herausfinden, wann sich ein Verzeichnis ändert

  Alt 22. Jun 2005, 18:47
Moin Catbytes,

wenn es unter allen Windows-Versionen laufen soll, wirst Du nicht umhinkommen, FindFirstChange... zu verwenden, und die Unterschiede selber zu ermitteln.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von Catbytes
Catbytes

Registriert seit: 7. Sep 2002
Ort: Heckendalheim
353 Beiträge
 
Delphi XE5 Enterprise
 
#7

Re: Herausfinden, wann sich ein Verzeichnis ändert

  Alt 23. Jun 2005, 02:14
Zitat von Christian Seehase:
wenn es unter allen Windows-Versionen laufen soll, wirst Du nicht umhinkommen, FindFirstChange... zu verwenden, und die Unterschiede selber zu ermitteln.
Oje - auf der Platte sind ca. 3 Mio. Dateien

Da werd' ich mir wohl was einfallen lassen müssen
Catbytes
  Mit Zitat antworten Zitat
Benutzerbild von BrunoT
BrunoT

Registriert seit: 23. Jan 2003
Ort: Sandbeiendorf
360 Beiträge
 
Delphi 8 Professional
 
#8

Re: Herausfinden, wann sich ein Verzeichnis ändert

  Alt 23. Jun 2005, 06:11
Hey Catbytes,

etwas ungewöhnlich:
dir \ /n/s >datei1.txt

später

dir \ /n/s >datei2.txt

und vergleichen. vieleicht lässt sich das in Delphi nachvollziehen.

mfg

BrunoT
Holger

EDV- Ende der Vernunft
Meine Calcedit-Kompo
  Mit Zitat antworten Zitat
runger
(Gast)

n/a Beiträge
 
#9

Re: Herausfinden, wann sich ein Verzeichnis ändert

  Alt 23. Jun 2005, 08:10
Hallo BrunoT,

jemand aus der alten Schule, hätt ich auch so gemacht. Geht ohne weiteres in Delphi zu realisieren.

Rainer
  Mit Zitat antworten Zitat
Benutzerbild von mh166
mh166

Registriert seit: 14. Nov 2004
Ort: Chemnitz
443 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#10

Re: Herausfinden, wann sich ein Verzeichnis ändert

  Alt 23. Jun 2005, 15:29
Hi. Ich hab hier was gefunden. Sollte das gewünschte Ergebnis bringen (glaub ich... habs nur überflogen). Der Source is zwar AFAIK in C, aber vllt. hilft dir ja jemand beim übersetzen, falls du damit nich klar kommen solltest.

mfg, mh166

PS: Und wieder einmal hat mir der SessionSaver meine Tabs samt Formular-Inhalt gerettet!
Tiefgründige Sätze unserer Zeit:
Zitat von Luckie:
Und diesen Token zur Laufzeit zu modifizieren würde bedeuten, dass du zur laufzeit das Token ändern musst.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:40 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