Frage

Eine meiner Lieblings-tools für linux ist lsof - ein echtes Schweizer Taschenmesser!

Heute fand ich mich Fragen, welche Programme auf einem WinXP-system hatte eine bestimmte Datei öffnen.Ist es eine entsprechende Dienstprogramm zu lsof?Außerdem wird die Datei in Frage, die über ein Netzwerk teilen, so bin ich nicht sicher, ob das kompliziert die Angelegenheit.

War es hilfreich?

Lösung

Verwenden Process Explorer aus der Sysinternals-Suite, die Find Handle oder DLL-Funktion wird lassen Sie suchen für Sie den Prozess mit der die Datei geöffnet.

Andere Tipps

Das äquivalent von lsof -p pid wird die kombinierte Ausgabe von sysinternals handle und listdlls, ie

handle -p pid
listdlls -p pid

finden Sie heraus, pid mit sysinternals pslist.

Versuchen Sie es Griff. Filemon & Regmon sind auch ideal für, um herauszufinden, was der duce Programm foo tun wird, um Ihren system.

Ein equivalent lsof kombiniert werden könnte die Ausgabe von Sysinternals' Griff und listdlls, also:

c:\SysInternals>handle
[...]
------------------------------------------------------------------------------
gvim.exe pid: 5380 FOO\alois.mahdal
   10: File  (RW-)   C:\Windows
   1C: File  (RW-)   D:\some\locked\path\OpenFile.txt
[...]

c:\SysInternals>listdlls
[...]
------------------------------------------------------------------------------
Listdlls.exe pid: 6840
Command line: listdlls

  Base        Size      Version         Path
  0x00400000  0x29000   2.25.0000.0000  D:\opt\SysinternalsSuite\Listdlls.exe
  0x76ed0000  0x180000  6.01.7601.17725  C:\Windows\SysWOW64\ntdll.dll
[...]

c:\SysInternals>listdlls

Leider müssen Sie "als Administrator ausführen", um in der Lage sein, Sie zu benutzen.

Auch listdlls und Griff tun nicht produzieren kontinuierliche Tisch-wie form, so dass die Filterung mit dem Namen verbergen möchte PID. findstr /c:pid: /c:<filename> sollte Euch sehr nahe mit beiden Dienstprogramme, obwohl

c:\SysinternalsSuite>handle | findstr /c:pid: /c:Driver.pm
System pid: 4 \<unable to open process>
smss.exe pid: 308 NT AUTHORITY\SYSTEM
avgrsa.exe pid: 384 NT AUTHORITY\SYSTEM
[...]
cmd.exe pid: 7140 FOO\alois.mahdal
conhost.exe pid: 1212 FOO\alois.mahdal
gvim.exe pid: 3408 FOO\alois.mahdal
  188: File  (RW-)   D:\some\locked\path\OpenFile.txt
taskmgr.exe pid: 6016 FOO\alois.mahdal
[...]

Hier können wir sehen, dass gvim.exe ist das eine mit dieser Datei öffnen.

Versuchen Sie es Unlocker.

Der Unlocker Website hat eine nette Grafik (scrollen Sie nach unten nach dem link), das zeigt ein Vergleich mit anderen tools.Offensichtlich solche Vergleiche sind in der Regel voreingenommen, da Sie in der Regel geschrieben durch die Werkzeug-Autor, aber das Diagramm mindestens listet die alternativen, so dass Sie versuchen können, Sie für sich selbst.

Wenn die Datei ein .dll dann können Sie die TaskList Befehlszeilen-app zu sehen, deren es offen haben:

TaskList /M nameof.dll

Wenn Sie mit der rechten Maustaste auf "Computer" (oder "My Computer" - Symbol) und wählen Sie "Verwalten" aus dem Popup-Menü, das wird nehmen Sie, um Computer-Management-Konsole.

Dort, unter System\Freigegebene Ordner finden Sie "Dateien Öffnen".Dies ist wahrscheinlich nahe an dem, was Sie wollen, aber wenn Sie die Datei auf einer Netzwerkfreigabe befindet, dann müssten Sie tun, die gleiche Sache auf den server, auf dem sich die Datei Leben.

Es gibt ein Programm "OpenFiles", scheint Sie zu werden Teil von windows 7.Scheint, dass es können tun, was Sie wollen.Sie können die Liste der Dateien geöffnet durch remote-Benutzer (über Datei-freigeben) und, nach dem Aufruf "openfiles /Local on" und ein system neu starten, es sollte in der Lage sein zu zeigen, geöffnete Dateien lokal.Letzteres wird gesagt, um Leistungseinbußen.

Process Explorer verwenden, um die Prozess-id.Verwenden Sie dann Griff um herauszufinden, welche Dateien geöffnet sind.

Eg-Griff -p

Ich mag diesen Ansatz, weil du der Verwendung von Hilfsprogrammen von Microsoft selbst.

In OpenedFilesView, unter dem Menü "Optionen" gibt es einen Menüpunkt namens "Show Network Files".Vielleicht mit ein, die es ermöglichte, das oben erwähnte Tool ist von einigem nutzen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top