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 Herausfinden, welches Programm eine Datei sperrt (https://www.delphipraxis.net/128791-herausfinden-welches-programm-eine-datei-sperrt.html)

amigage 6. Feb 2009 09:34


Herausfinden, welches Programm eine Datei sperrt
 
Hallo liebe Delphi-Gemeinde,

ich habe jetzt eine Weile mit verschiedenen Suchbegriffen im Forum geforascht, aber nichts finden können.

Ich suche eine Möglichkeit, herauszufinden, welches Programm eine Datei sperrt, wenn ich keinen Zugriff auf diese Datei erhalte. Geht das? Wenn ja, wie?

Ein Link zu einem bestehenden Thread hier im Forum würde mir schon reichen :wink:

Danke.

himitsu 6. Feb 2009 10:31

Re: Herausfinden, welches Programm eine Datei sperrt
 
mit'm Hier im Forum suchenProcess Explorer kann man viel rausbekommen, oder einfach mal nach Bei Google suchenUnlocker suchen

WS1976 6. Feb 2009 11:20

Re: Herausfinden, welches Programm eine Datei sperrt
 
Hallo,
wer eine Datei in Besitz hält kannst du relativ einfach sehen:

WinXP:
Start -> Einstellungen -> Systemsteuerung -> Verwaltung -> Computerverwaltung -> Freigegebene Ordner
-> geöffnete Dateien.

Grüsse
Rainer

himitsu 6. Feb 2009 11:34

Re: Herausfinden, welches Programm eine Datei sperrt
 
Zitat:

Zitat von WS1976
WinXP:
Start -> Einstellungen -> Systemsteuerung -> Verwaltung -> Computerverwaltung -> Freigegebene Ordner
-> geöffnete Dateien.

schon probiert?

das sollten nur die Netzwerkfreigaben sein ;)

Ansonsten würde es mich wundern, da dort angeblich garade nichts geöffnet ist :stupid:

amigage 6. Feb 2009 12:54

Re: Herausfinden, welches Programm eine Datei sperrt
 
Sorry, ich habe mich vielleicht etwas falsch ausgedrückt. :(
Process Explorer und Unlocker sind mir wohl bekannt.

Ich suche eine Möglichkeit, dies in meinem Delphiprogramm herauszubekommen, um es dem Anwender mitzuteilen.
Z.B. wenn eine Datei nicht kopiert werden kann, soll die Software sagen, dass er doch das entsprechende Programm schließen soll.

Ich benötige also eine Funktion, die mir den Namen der (exe)-Datei zurückliefert, wenn ich eine gesperrte Datei abfrage.

Die o.g. Programme können es ja auch... irgendwie ;-)

mirage228 6. Feb 2009 12:58

Re: Herausfinden, welches Programm eine Datei sperrt
 
Such mal nach Bei Google suchenWhoLockMe ;)

himitsu 6. Feb 2009 13:03

Re: Herausfinden, welches Programm eine Datei sperrt
 
eine Funktion für Delphi ist mir nicht bekannt, aber so einfach wird es nicht sein, vorallem da es nicht soo viele Programme gibt, die das überhaupt auslesen können.

Es ist zwar (bedingt) möglich rauszubekommen welcher Datei ein Handle zugeordnet ist, aber dann müßtest du dich durch alle aktiven Programme hangeln (falls du die Rechte dazu hast) und ersmal 'ne Liste der offnen Handles erstellen (alle möglichen bruteforcemäßig durchzuprobiren wäre etwas Rechenintensiv), dann vermutlich diese Handle in deinen Prozess reinclonen und abfragen wozu sie gehören.

Luckie 6. Feb 2009 18:57

Re: Herausfinden, welches Programm eine Datei sperrt
 
Ohne Treiber ist keine sichere Lösung möglich.

himitsu 6. Feb 2009 20:35

Re: Herausfinden, welches Programm eine Datei sperrt
 
Zitat:

Zitat von Luckie
ist keine sichere Lösung möglich.

und selbst mit Treiber wohl auch nicht ... irgendwie soll doch die windowsinterne struktur nicht offengelegt sein und keiner weiß genau wie und ob sich da mal irgendwann wieder was dran ändert.

Delphi-Laie 7. Feb 2009 07:36

Re: Herausfinden, welches Programm eine Datei sperrt
 
Zitat:

Zitat von himitsu
irgendwie soll doch die windowsinterne struktur nicht offengelegt sein

Nun, immerhin der/die Programmierer vom Unlocker muß/müssen diese Interna doch kennen, anscheinend sogar aus dem FF. Wer mit einem Debugger umgehen kann (ich leider nicht), der müßte dem Unlocker doch so manches Geheimnis entreißen können?!


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:39 Uhr.
Seite 1 von 2  1 2      

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