Es geht mir in erster Linie darum, zu erkennen, welche Datenzugriffe bei Ausführung von Anwendungen laufen. Ich möchte z.B. herausfinden, wann welche INI-dateien geöffnet werden, Zugriffe auf DLL's erfolgen, Registry-Einträge gelesen werden, e.t.c.. Alles was dazu gehört.
Ein Anwendungsfall:
Mein Vater möchte von einer Original-DVD eine Sicherungskopie des MS-RoutenPlaners anlegen. Da er keinen DVD-Brenner besitzt und auch kein häufiger Bedarf eines solchen vorliegt, möchte er das komplette Setup des Routenplaners von der DVD Kapseln und auf eine normale CD-R brennen.
Ich habe mir die DVD angesehen und muss zugeben, dass Microsoft sehr clever war, die Daten aller Programme auf der DVD z. T. zu "mischen". Meine Idee war, ein Programm zu schreiben, welches bei Ausführung von Anwendungen deren Zugriffe aufzeichnet und z. B. ein Image für Nero oder ein anderes Format anlegt, welches resultierend für o. g. Beispiel nur das Setup zum RoutenPlaner enthält.
Der Link zu 'FileMon' war ein sehr guter Tip.
Zitat: |
People knew how to write small, efficient programs [...], a skill that has subsequently been lost.
(Aus dem Buch: Andrew S. Tanenbaum, Modern Operating Systems)
|
Allerdings möchte ich nicht jedesmal die gesamten Zugriffe speichern müssen und via Delphi aus dem LOG auslesen lassen. Ich will Problemorientierten Automatismus. Außerdem beduetet es eine neue Herausforderung, dies in Delphi zu realisieren.
Ich bin Euch dankbar aber ich brauche immer noch Anregungen.
//Edit:
P.S. zu SHChangeNotify gelöscht.