![]() |
Ausführen einer Datei bemerken.
Hy!
Ich hab mal wieder ein kleines Problem. Diesmal handelt es sich darum, dass wenn eine Datei von einem ausgewählten Typ vom Nutze geöffnet wird, das Programm vorher noch etwas tun soll. Z.B. (nur zur Verdeutlichung) Der Benutzer öffnet eine *.doc-Datei --> Programm öffnet eine Messagebox mit dem Inhalt "Schönes Word-Dokument". Kann mir jemand helfen? MfG Telekab |
Re: Ausführen einer Datei bemerken.
Über API Hooks geht das eventuell.
|
Re: Ausführen einer Datei bemerken.
Zitat:
|
Re: Ausführen einer Datei bemerken.
Zitat:
|
Re: Ausführen einer Datei bemerken.
Klingt für mich nach einem Dateisystemfiltertreiber. Der bekommt dann zu erst die benachrichtigung, dass die Datei geöffnet werden soll und reicht dann die Benachrichtigung weiter. Da es sich um einen Treiber handelt, wirst du wohl auf eine Entwicklungsumgebung von Microsoft zurückgreifen müsen und das DDK.
|
Re: Ausführen einer Datei bemerken.
Danke schonmal, aber was ist ein API Hook?
Und wie kann ich einen Dateisystemfilter machen? GIbts da Tutorials? MfG Telekab. |
Re: Ausführen einer Datei bemerken.
Mit einem API-Hook kommst du nicht in den Kernel Mode rein. Hilft dir also nichts. Das DDK enthält alles, was du brauchst: Kompiler, Header-Dateien und Beispiele. Du solltest aber C fliessend können und wissen, wie Windows im Kernel Modus funktioniert, sonst sind die Chancen für dich gleich null. Einen Treiber schreibt man nicht mal eben so.
|
Re: Ausführen einer Datei bemerken.
OK, ich wollte es wenn dann schon mit Delphi machen.
Also entfällt die Geschichte mit dem DDK. Aber mir ist jetzt etwas eingefallen. Ihr habt doch erwähnt, dass es möglich ist über einen API Hook (Was ist ein Hook?) zu erfahren, dass eine Datei geöffnet wird, dann sollte es doch kein Problem sein, sich den Pfad zu dieser Datei zu merken, sie zu schließen und das Programm die Message ausgeben zu lassen und erst dann die Datei über den Pfad wieder zu öffnen, oder? MfG Telekab. |
Re: Ausführen einer Datei bemerken.
Zumindets bei EXE Dateien könnte man CreateProcess hooken.
|
Re: Ausführen einer Datei bemerken.
Du könntest natürlich die Verknüpfung zwischen *.DOC und WinWord.exe in der Registry ändern
und auf deine eigene Anwendung (WinWordErsatz.exe) richten. WinWordErsatz zeigt die Meldung, startet WinWord.exe und beendet sich selbst. Nicht sehr elegant, aber eine machbare Lösung. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:07 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz