Mit einem Verweis auf eine File
ist es möglich, (programmatisch) festzustellen, ob die entsprechende Datei gesperrt ist und wenn ja, welcher Prozess die Sperre hält?
Ich verwende Java 5, das unter Windows läuft.
Danke! Don
Mit einem Verweis auf eine File
ist es möglich, (programmatisch) festzustellen, ob die entsprechende Datei gesperrt ist und wenn ja, welcher Prozess die Sperre hält?
Ich verwende Java 5, das unter Windows läuft.
Danke! Don
Ich denke, dass dies nur auf einheimische Weise möglich ist. Sie müssen auf FileHandle Informationen zugreifen. Schreiben Sie eine Dll und verbinden Sie diese mit Ihrer Java-App über JNI. Rufen Sie NtQuerySystemInformation mit SystemHandleInformation(16) auf. Sie erhalten eine Liste mit allen offenen Handles, suchen nach FileHandles, vergleichen FileHandles mit Ihrer eigenen Datei.
CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.
1 Stimmen
Überprüfen Sie stackoverflow.com/questions/1500174/
1 Stimmen
Ist dieser Thread hilfreich? stackoverflow.com/questions/1390592/
1 Stimmen
Ich verwende für diese Erkennung die Procexp-Anwendung von Sysinternal, die dafür bekannt ist, dass sie Low-Level- und undokumentierte Windows-Api verwendet, weshalb ich niemals erwarten würde, dass dies in Java möglich ist. Aber wenn es einen Weg gibt, wäre es großartig.
0 Stimmen
@calavera vielleicht gibt es eine Möglichkeit, dies in einen Java-Prozess zu verpacken. Gibt es eine Befehlszeilenschnittstelle?
0 Stimmen
@seanizer Ich glaube nicht, dass es eine Befehlszeilenschnittstelle gibt und außerdem ist die Lösung von Christian der richtige Weg, um native Betriebssystemfunktionen zu nutzen.
0 Stimmen
Wenn Sie bereit sind, C++-Code zu schreiben, ja. Aber die Frage bezog sich auf Java.