Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Alle geöffneten Dateien + Handle + PID anzeigen (https://www.delphipraxis.net/30444-alle-geoeffneten-dateien-handle-pid-anzeigen.html)

SleepyMaster 24. Sep 2004 21:14


Alle geöffneten Dateien + Handle + PID anzeigen
 
Hi ihrs

Es gibt jedemenge Programme, die dies können:
http://www.sysinternals.com der (FileMon) und auch sogar Programme die in Delphi geschrieben wurden:
http://www.wilsonc.demon.co.uk/delphi.htm (File Handle Analyzer) Letzteres ist zwar sogar mit Source, nur leider blicke ich da überhaupt nicht durch.

wüßte jemand einen Lösungsansatz, wie dies möglich ist?

Vielen Dank

NicoDE 24. Sep 2004 21:18

Re: Alle geöffneten Dateien + Handle + PID anzeigen
 
Zitat:

Zitat von SleepyMaster
Letzteres ist zwar sogar mit Source, nur leider blicke ich da überhaupt nicht durch.

Was ist (für Dich) an dem Quelltext unverständlich?

Zitat:

Zitat von SleepyMaster
wüßte jemand einen Lösungsansatz, wie dies möglich ist?

Siehe oben.

SleepyMaster 24. Sep 2004 21:43

Re: Alle geöffneten Dateien + Handle + PID anzeigen
 
Zitat:

Zitat von NicoDE
Siehe oben.

Hast recht, hab mich zu schnell abschrecken lassen.
Hmm... setzt mich nochmal hin und guck mir das nochmal alles in Ruhe an.

NicoDE 24. Sep 2004 21:47

Re: Alle geöffneten Dateien + Handle + PID anzeigen
 
Liste der Anhänge anzeigen (Anzahl: 2)
Zitat:

Zitat von SleepyMaster
Hmm... setzt mich nochmal hin und guck mir das nochmal alles in Ruhe an.

Anbei zwei Gründe nicht den Weg des FileAnalyzers zu beschreiten...

SleepyMaster 24. Sep 2004 21:54

Re: Alle geöffneten Dateien + Handle + PID anzeigen
 
Zitat:

Zitat von NicoDE
Anbei zwei Gründe nicht den Weg des FileAnalyzers zu beschreiten...

Und wie würdes du es machen?

NicoDE 24. Sep 2004 21:56

Re: Alle geöffneten Dateien + Handle + PID anzeigen
 
Zitat:

Zitat von SleepyMaster
Und wie würdes du es machen?

Wenn ich soviel Ahnung wie die Leute von Sysinternals hätte, dann würde ich das auch so machen :)

Mephistopheles 27. Apr 2005 19:32

Re: Alle geöffneten Dateien + Handle + PID anzeigen
 
Einfach nur Prozess welcher ein Handle hält plus Dateiname plus PID? Kein Problem unter NT. Das geht mit der NT Native API. Du mußt "nur" alle Handles eines jeden Prozesses ermitteln, danach aus den Handles den Objektnamen ermitteln und dann ermitteln in welchem Prozess die besagte Datei geöffnet wurde.

NicoDE 28. Apr 2005 10:17

Re: Alle geöffneten Dateien + Handle + PID anzeigen
 
Zitat:

Zitat von Mephistopheles
danach aus den Handles den Objektnamen ermitteln

Wenn ich mich dunkel erinnere, geht das nur wenn das System mit speziellen Debug-Flags gestartet wurde (habe weder Zeit noch Windows zur hand um nachzusehen).

Mephistopheles 28. Apr 2005 10:29

Re: Alle geöffneten Dateien + Handle + PID anzeigen
 
Zitat:

Zitat von NicoDE
Zitat:

Zitat von Mephistopheles
danach aus den Handles den Objektnamen ermitteln

Wenn ich mich dunkel erinnere, geht das nur wenn das System mit speziellen Debug-Flags gestartet wurde (habe weder Zeit noch Windows zur hand um nachzusehen).

Kampf der Titanen :mrgreen: :
ZwQueryObject() mit ObjectBasicInformation- oder ObjectNameInformation-Klasse (ersteres gibt sogar die verwendete AccessMask usw.).

@Nico: Antwortest du auch mal auf die PN ... biddäh :mrgreen:

NicoDE 28. Apr 2005 10:49

Re: Alle geöffneten Dateien + Handle + PID anzeigen
 
Zitat:

Zitat von Mephistopheles
Kampf der Titanen :mrgreen:

Kampfstern Galaktika IV ?-)

Zitat:

Zitat von Mephistopheles
ZwQueryObject() mit ObjectBasicInformation- oder ObjectNameInformation-Klasse (ersteres gibt sogar die verwendete AccessMask usw.).

Schon klar, aber ich kann mich nur erinnern, dass es einen Haken hatte und nicht immer funktionierte...
Wie auch immer, ich habe lange nicht mehr in NT gegraben und sollte die Finger von solchen Threads lassen :D

Zitat:

Zitat von Mephistopheles
Antwortest du auch mal auf die PN ...

Spätenstens am 1. Mai :)


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:03 Uhr.
Seite 1 von 2  1 2      

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