Kann Windows mir sagen, was mein USB-Laufwerk verwendet?

Da ich der gute Bürger bin, klicke ich mit der linken Maustaste auf das Symbol" Hardware sicher entfernen " in meiner Taskleiste und wähle mein USB-Laufwerk zum Absteigen aus.

Dann erhalte ich die Nachricht:

Windows kann Ihr generisches Volume-Gerät nicht stoppen, da es verwendet wird. Schließen alle Programme oder Fenster, die das Gerät verwenden könnten, und versuchen Sie es später erneut.

Da es sich natürlich um das Betriebssystem handelt, weiß es genau, welche Anwendungen mein Gerät verwenden. Also warum wird es mir nicht sagen?

Oder gibt es einen Weg, den ich herausfinden kann?

Author: random, 2009-12-24

9 answers

Sie können Sysinternals Process Explorer verwenden, um das Handle für alle geöffneten Dateien zu finden. Wählen Sie einfach das Menü Find und wählen Sie Find Handle or DLL. Geben Sie im folgenden Dialogfeld den Laufwerksbuchstaben in das Suchfeld ein. Die Suchergebnisse sollten alle Dateien anzeigen, die vom Laufwerk aus geöffnet sind und bei welchem Prozess sie geöffnet sind.

 69
Author: heavyd,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2009-12-24 17:13:08

Einfachere Methode: Windows (mindestens 10, AFAIK) erstellt einen Eintrag im Ereignisprotokoll, wenn Sie versuchen, ein Wechseldatenträger auszuwerfen, und Sie können dies nicht, da ein Prozess gesperrt ist. Die beiden Ereignis-IDs 225 zeigen die Prozess-ID und den Namen des für die Sperre verantwortlichen Prozesses an.

Schritt für Schritt:

1) Starten Sie die Ereignisanzeige

2) Öffnen Sie "Windows Logs" und dann "System"

3) Klicken Sie mit der rechten Maustaste auf "System" und wählen Sie "Aktuelles Protokoll filtern"

4) der Dialog, der erscheint, geben Sie "225" (ohne Anführungszeichen), wo es heißt "Alle Ereignis-IDs"

5) Sie sehen dann alle Ereignisse, die mit dem Auswerfen zusammenhängen, da ein Prozess das Laufwerk gesperrt hat.

6) Sehen Sie sich die Zeitstempel für alle diese Einträge an und finden Sie heraus, welche sich auf die tatsächliche Zeit beziehen, zu der Sie versucht haben, das Laufwerk auszuwerfen.

7) Ergreifen Sie geeignete Maßnahmen. Das Beenden einer Aufgabe ordnungsgemäß (Schließen des Programms mit der Sperre) ist die meiste Zeit in Ordnung. Beenden des Windows-Suchdienstes ist auch ok. Das Stoppen eines Antivirenscans sollte in Ordnung sein (wenn Sie nicht vermuten, dass Sie zu diesem Zeitpunkt Viren haben). Wenn Sie in den Task-Manager gehen und den Prozess beenden, ist dies möglicherweise nicht in Ordnung. Wie damit umzugehen ist, geht über den Rahmen dieser Frage hinaus.

8) (Speichern Sie die Ansicht...) im Aktionsbereich (im rechten Rahmen) können Sie den Filter in der benutzerdefinierten Ansicht speichern..."sie finden es also in" Benutzerdefinierte Ansichten "(im linken Rahmen über den "Windows-Protokollen")

Prozess-ID: Eintrag der Ereignisanzeige

- Prozess Name: Eintrag der Ereignisanzeige

8) Wenn Sie keinen weiteren Eintrag mit einem Prozessnamen haben, hält der Systemprozess (Prozess-ID 4) Ihr Laufwerk. Um dies zu umgehen, müssen Sie zur Datenträgerverwaltung gehen und das Laufwerk, das Sie auswerfen möchten, offline stellen. Wenn sich die Datei auf Ihrem Bootlaufwerk befindet, können Sie sie nicht offline stellen. Siehe in diesem Fall den folgenden Hinweis:

UPDATE 2018: Ich habe Anwendungen wie WhatsApp Desktop gesehen, die Handles auf Chrome Canary behalten. der Systemprozess. Da Sie die Bootdiskette nicht auswerfen können (Beacuse wird verwendet), bestand die Lösung darin, ein anderes nifty Sysinternals - Dienstprogramm namens Handle zu verwenden. Nachdem Sie das Programm mit der gesperrten Datei geschlossen haben, starten Sie handle und führen Sie (als Beispiel) handle64 "Chrome SxS\Application\chrome.exe" aus, um festzustellen, ob die Handles in der Datei mit der PID 4-Sperre noch vorhanden sind. Schließen Sie über Versuch und Irrtum jedes ausgeführte Programm, bis die gesperrte Datei nicht mehr behandelt wird.

Beste Methode (bezahlt)

Herunterladen und ausführen SafelyRemove. Es hilft Ihnen, das Laufwerk auszuwerfen, und wenn es dies nicht kann, zeigt es an, welche Prozesse gesperrt sind:

geben Sie hier die Bildbeschreibung ein

 144
Author: Gaia,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2018-05-19 04:17:37

Sie können auch die Befehlszeile verwenden, um das Windows-Protokoll mit wevtutil abzufragen.exe (seit Windows 7) mit dem Wissen, dass der Windows Kernel-PnP die Ereignis-ID 225 verwendet, um das System zu protokollieren (immer mit Prozess-ID 4) Weigerung, das Gerät zu entfernen oder auszuwerfen USB\VID_####&PID_############ (wobei die # ' s Hexadezimalzahlen bezeichnen).

wevtutil qe System /q:"*[System[(EventID=225)]]" /c:5 /f:text /rd:true
  • qe System: Abfrage von Ereignissen aus dem Systemprotokoll
  • / q: Abfrage mit XPath
  • EventID=225 bedeutet, dass das System eine Auswurf-request
  • / c:5: Anzahl der abzurufenden Einträge (hier 5)
  • " /f:text : format (Standard ist xml)
  • / rd: true: umgekehrte Reihenfolge (neueste erste)

Ich benutze es in einem Batch-Skript.

 11
Author: Tchonialite,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2018-04-02 13:01:32

Hier ist ein schneller Befehl PowerShell, um das Ereignisprotokoll abzufragen und anzuzeigen, welche Anwendung den Laufwerkauswurf blockiert (funktioniert für mich mit Windows 10, funktioniert wahrscheinlich auch mit 7/8)

Get-EventLog -LogName System -after (Get-Date).AddHours(-1) | Where-Object {$_.EventID -eq 225} | Sort-Object TimeGenerated | Format-Table -Wrap

Die Ausgabe listet alle Instanzen der letzten Stunde auf, in denen das System kein Laufwerk auswerfen konnte. Die Spalte Message zeigt den Prozess, der den Auswurf blockiert hat. In meinem Beispiel unten war der Task-Manager tatsächlich der Schuldige und ich konnte nach dem Schließen der Aufgabe auswerfen Manager.

PS C:\Users\Jonathan> Get-EventLog -LogName System -after (Get-Date).AddHours(-1) | \Where-Object {$_.EventID -eq 225} | Sort-Object TimeGenerated | Format-Table -Wrap

   Index Time          EntryType   Source                 InstanceID Message
   ----- ----          ---------   ------                 ---------- -------
   14692 Sep 07 10:50  Warning     Microsoft-Windows-Ke          225 The application \Device\HarddiskVolume4\Windows\System32\Taskmgr.exe with process id 11972 stopped
                                   rnel-PnP                          the removal or ejection for the device USB\VID_0781&PID_5575\200445301013C111B1A0.
   14693 Sep 07 10:50  Warning     Microsoft-Windows-Ke          225 The application \Device\HarddiskVolume4\Windows\System32\Taskmgr.exe with process id 11972 stopped
                                   rnel-PnP                          the removal or ejection for the device USB\VID_0781&PID_5575\200445301013C111B1A0.
 10
Author: Jon,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2018-09-07 16:15:11

Für mich (Windows 7).

  1. Drücken Sie Windows Taste
  2. In " Programme und Dateien suchen: Typ: diskmgmt.msc -
  3. In der Suchliste Eintrag suchen und Rechtsklick - als Administrator ausführen auswählen
  4. Geben Sie Admin-Anmeldeinformationen ein, um "Datenträgerverwaltung" auszuführen (falls erforderlich)
  5. Finden Sie ein fehlerhaftes USB-Laufwerk, das nicht in die Datenträgerliste eingefügt wird
  6. Linke hand panel, rechts klicken wählen "Auswerfen "
  7. Griffe "sollte" schließen - Sie können immer verdoppeln check-in sys internals process explorer -

Hinweis: "Hardware sicher entfernen und Medien auswerfen" Taskleistensymbol zeigt kein USB-Laufwerk mehr an - nur drei Punkte

  1. Laufwerk physisch entfernen
 5
Author: blakev,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2016-01-12 15:40:50

Sie können resmon starten.exe (über WIN+R), gehen Sie zu Festplatte > Festplattenaktivität > Nach Datei sortieren Jetzt können Sie alle Dateien sehen, auf die das System zugreift und welche Prozesse darauf zugreifen, geordnet nach dem Dateipfad (der übrigens mit einem Laufwerksbuchstaben beginnt). Kann nicht mit allen Fällen funktionieren, aber es ist ein einfacher Ansatz.

Ein Neustart des Computers scheint die Gerätenutzung freizugeben. Auch für eine schnellere Entfernung, können Sie Windows-Caching auf Hardware-Abschnitt des Geräts deaktivieren, manchmal wird Windows nehmen länger als erwartet, um den Cache auf eine externe Festplatte zu leeren, und zeigt diese Meldung an, dass das Gerät verwendet wird (weil es von Windows selbst verwendet wird)

 4
Author: Felype,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2016-12-21 17:48:21

Wenn Sie "Arbeitsplatz" öffnen und Ihr Laufwerk nicht unter den Headern "Wechselspeicher" aufgeführt ist, wird es von Windows aus irgendeinem Grund als feste Systemressource angezeigt. Sie müssen alle Partitionen auf dem Laufwerk aushängen.

Wenn dies der Fall ist, öffnen Sie "Computerverwaltung" und gehen Sie dann zu "Datenträgerverwaltung". Klicken Sie für jede Partition auf dem Gerät mit der rechten Maustaste auf die Partition, wählen Sie "Laufwerksbuchstaben und-pfade ändern" und entfernen Sie alle dieser Partition zugewiesenen Laufwerksbuchstaben. Sobald Sie dies tun, Sie sollte feststellen, dass die Funktion "Sicheres Auswerfen" wie erhofft funktioniert.

 2
Author: user1575326,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2016-12-03 20:50:45

Hatte USB, das Windows als in Gebrauch gemeldet...das gleiche wie alle anderen hier.

In Windows 10 gelangt Strg+Alt+Entf zum Task-Manager.

Suchen durch Scrollen-Windows Explorer. und markieren.

Unten rechts ist eine nette freundliche Schaltfläche namens "Restart Process"

Überprüfen Sie doppelt und dreifach, ob "Windows Explorer" das einzige hervorgehobene ist.

Maus mit der linken Maustaste auf die Schaltfläche "Prozess neu starten".

Ich hatte nur einen einzigen Explorer, andere haben manchmal zwei. Notieren Sie sich nur, auf welche man zurückkommt. Versuchen Sie, den USB zu schließen/auszuwerfen. Mine funktionierte gut, schließen Sie den USB.

Wenn Ihre nicht auswerfen/schließen, dann war es wahrscheinlich der andere Explorer. Versuchen Sie es noch einmal und Restat, dass man. Glück.

 0
Author: John Henson,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2018-03-26 07:53:55

Ich habe dies mit Windows 10 versucht.

Öffnen Sie den Ressourcenmanager, indem Sie entweder im Start "Hier eingeben, um zu suchen" oder über den Task-Manager suchen (klicken Sie mit der rechten Maustaste auf die Taskleiste und dann auf Task-Manager, um ihn zu öffnen).

Unter Ressourcenmanager wird die Spalte mit dem Namen image verwendet, um den Prozessnamen anzuzeigen, und die Spalte mit dem Namen File kann verwendet werden, um zu überprüfen, ob der Prozess Ihr Laufwerk verwendet. ZB wäre die Dateiadresse F:/foo/bar.tmp , wenn Ihr angeschlossener USB Laufwerksbuchstabe F: , sie können diesen Vorgang beenden. Spalte mit dem Namen PID - zeigt die Prozess-ID.

Um einen Prozess zu beenden: Geben Sie CMD oder Eingabeaufforderung ein taskkill /F /PID pid_number

 0
Author: Imran Faruqi,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2020-07-14 19:10:28