Frage

Dieses Problem taucht ab und zu bei der Arbeit auf. Unser Build-Rechner kann die Dateien über eine normale Windows-Dateifreigabe zugegriffen hat. Wenn jemand einen Ordner entfernt auf der Maschine durchsucht, und lässt das Fenster offen über Nacht, dann schlägt der Build (wie es jetzt getan hat). Das Explorer-Fenster nach links geöffnet Punkte in einem der Unterordner im Quellbaum. Der Build löscht die Quelle, und macht einen sauberen Kasse vor dem Bau. Der Lösch versagt.

Im Moment, würde Ich mag die Build-Arbeit zu bekommen. Ich bin in von zu Hause angemeldet, und ich mag lieber nicht den Build-Rechner neu starten. Ich bin nicht in der Lage halten, der Person zu bekommen, deren Maschine sucht und die Dateien, und ich kann nicht aus der Ferne ihre Computer neu zu starten.

Wenn eine Windows-Freigabe eine Sperre hat, der Verriegelungsvorgang ist System, so dass ich glaube nicht, dass ich es töten kann, wie bei normalen Schlössern.

Kennt jemand eine Möglichkeit, die Sperre auf einem freigegebenen Ordner freizugeben, ohne den Computer neu zu starten?

War es hilfreich?

Lösung 2

eine Lösung gefunden.

  1. den Prozess finden mit Prozess Explorer :

    1. Laden und Extrahieren von procexp.exe
    2. In Process Explorer verwende "Finde oder DLL Griff ..." Befehl aus dem Menü "Suchen"
    3. Geben Sie den Namen des Verzeichnisses, die Probleme zu löschen ist mit
    4. Eine Liste der geöffneten Dateien, die diesen Namen übereinstimmen sollte gezeigt werden. Nehmen Sie einige Vermutungen und finden, welche gelöscht werden ausfällt. Wenn die Datei von einer Windows-Freigabe gesperrt ist, wird der Prozess die Datei Haltesystem
    5. Beachten Sie das Verzeichnis nach unten, die offen gelassen wurde
  2. Herunterladen und Installieren des Unlocker ( Warnung : Link entfernt, da es Malware enthält)

    1. Installieren Unlocker, deaktivieren Sie die Option für Explorer-Erweiterungen und anderen Müll
  3. Entriegeln Sie das Verzeichnis

    1. Öffnen Sie ein CMD-Fenster auf und zu C navigieren: \ Programme \ Unlocker
    2. Von der cmd-Fenster laufen Unlocker.exe "the-path-to-the-Locked-Ordner"
    3. Es wird ein Dialog, um die Entriegelung der Bestätigung eingeblendet. Verwenden Sie die Unlock-Taste, um die Datei zu entsperren

Nun sollte das Verzeichnis freigeschaltet werden, und kann nun gelöscht werden.

Andere Tipps

Wenn Sie auf dem Server Admin, um die Datei über das Netzwerk teilen, können Sie die Windows-in-built-Funktion verwenden:

  1. Start → Arbeitsplatz → Rechtsklick auf → Manage bringt Sie an den Computer Management-Konsole
  2. In der linken Navigationsleiste navigieren zu Systemen Werkzeugen → Shared Folders
  3. Sie können sehen Anteile Sessions & Open Files hier. Dies ermöglicht es Ihnen, um herauszufinden, wer hat sich geöffnet, welche Dateien, aus denen Arbeitsplätze.
  4. Rechtsklick auf einen Eintrag in der Liste der Lage sein, die Dateisperre zu entfernen.

Hope, das hilft.

Versuchen Sie Process Hacker: https://wj32.org/processhacker/

Process Hacker ist wie Process Explorer auf Steroiden.

findet der säumige Prozess, drücken Sie STRG + F oder klicken Sie auf die Schaltfläche „Griffe von DLLs finden“ und für die Dateinamen suchen.

Wenn Sie die Datei in dem Fund behandelt Dialog zu finden, können Sie einfach rechtsklicken Sie die Datei dort, und wählen Sie „Schließen“. (Zumindest für v2.39.124)

ältere Versionen hatten eine „Terminator“ -Option im Kontextmenü des Prozesses.  Rechtsklick auf dem säumigen Prozess -> Miscellaneous -> Terminator -> Select Abschlusstechniken . Beachten Sie, dass einige möglicherweise gefährlich sind und unbeabsichtigte Folgen haben.

Ich habe ähnliche Probleme gehabt, und keiner dieser Vorschläge habe ich oben Blick geeignet für automatisierte über Nacht baut gesehen (wie das ursprüngliche Plakat impliziert), weil sie alle manuellen Aufwand erfordern, um die Schlösser zu jagen und zu töten.

Die einzige Methode, die ich habe versucht, die zuverlässig zu funktionieren scheint, den Anteil selbst, macht den Build zu entfernen, dann den Anteil wieder hinzufügen. Hier ist eine Möglichkeit, den Anteil automatisch zu entfernen:

D: \ Projects> net share Projekte / DELETE / Y

Die Benutzer haben offene Dateien auf Projekte. den Betrieb fort werden die Dateien erzwingen geschlossen.

Projekte wurden erfolgreich gelöscht.

. (Anmerkung: wieder den Anteil Erstellen automatisch ein Schmerz sein kann, wenn die Berechtigungsgruppen, die Sie geben müssen es chaotisch sind)

Die Art, wie ich es tun, ist durch die Verwendung sowohl OpenFiles.exe und Handle.exe Sie können sie in beliebiger Reihenfolge ausgeführt werden, und Sie werden Ihre Ressource vollständig freigeschaltet haben.

openfiles: File Sharing Sitzungen trennen

Handle.exe: um jedes offenes Handles (versuchen Sie nicht, Griffe zu schließen, die PID4, da das System Prozess ist)

Sie können dies automatisieren, indem Sie mithilfe von Powershell, Batch oder jede Sprache Ihrer Wahl.

Eine weitere Möglichkeit ist, ausgehend von Windows Vista, das Windows-Tool in das System eingebaut zu verwenden:

Monitor Ressourcen: perfmon.exe /res

Extrahiert aus: Http://www.sysadmit.com/2017/06/windows-how-to-know-that-process-has-open-a-file.html

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