2009-12-24 17:00:39 +0000 2009-12-24 17:00:39 +0000
107
107

Czy system Windows może mi powiedzieć, co korzysta z mojego dysku USB?

Jako dobry obywatel, którym jestem, klikam lewym przyciskiem myszy na ikonę “Bezpieczne usuwanie sprzętu” na pasku zadań i wybieram mój dysk USB do odmontowania.

Wtedy dostaję wiadomość:

Windows nie może zatrzymać Twojego urządzenia woluminów Generic, ponieważ jest ono w użyciu. Zamknij wszystkie programy lub okna, które mogą korzystać z urządzenia, a następnie spróbuj ponownie później.

Oczywiście, będąc systemem operacyjnym, wie on dokładnie jakie aplikacje używają mojego urządzenia. Dlaczego więc nie chce mi powiedzieć?

A może jest jakiś sposób, w jaki mogę się tego dowiedzieć?

Odpowiedzi (8)

119
119
119
2016-07-18 01:20:26 +0000

Prostsza metoda : Windows (przynajmniej 10, AFAIK) tworzy wpis w dzienniku zdarzeń, gdy próbujesz wysunąć dysk wymienny i nie możesz tego zrobić, ponieważ jakiś proces ma na nim blokadę. Dwa identyfikatory zdarzeń 225 będą pokazywać identyfikator procesu i nazwę procesu odpowiedzialnego za blokadę.

Krok po kroku:

1) Uruchom przeglądarkę zdarzeń

2) Otwórz “Windows Logs”, a następnie “System”

3) Kliknij prawym przyciskiem myszy na “System” i wybierz “Filter Current Log”

4) W oknie dialogowym, które się pojawi, wpisz “225” (bez cudzysłowów), gdzie jest napisane “All Event IDs”

5) Zobaczysz wtedy wszystkie zdarzenia związane z niemożnością wysunięcia dysku, ponieważ jakiś proces zablokował dysk.

6) Spójrz na znaczniki czasu na wszystkich tych wpisach i sprawdź, które z nich odnoszą się do rzeczywistego czasu, kiedy próbowałeś wysunąć dysk.

7) Podejmij odpowiednie działania. Zakończenie zadania z wdziękiem (zamknięcie programu, który ma blokadę) jest w większości przypadków w porządku. Zatrzymanie usługi wyszukiwania systemu Windows jest również w porządku. Zatrzymanie skanowania antywirusowego powinno być w porządku (jeśli nie podejrzewasz, że masz jakieś wirusy w tym czasie). Przejście do menedżera zadań i zabicie procesu może nie być w porządku. Jak sobie z tym poradzić, jest poza zakresem tego pytania.

8) (Save the view…) w panelu Actions (w prawej ramce) możesz “Save Filter to Custom View…” więc znajdziesz go w “Custom Views” (w lewej ramce nad “Windows Logs”)

Process ID:

Process Name:

8) Jeśli nie masz innego wpisu z nazwą procesu , to proces System (id procesu 4) trzyma twój dysk. Aby obejść ten problem, musisz przejść do zarządzania dyskami i umieścić dysk, który chcesz wysunąć w trybie offline . Jeśli plik jest na dysku startowym, nie możesz go umieścić w trybie offline. W tym przypadku, patrz uwaga poniżej:

UPDATE 2018 : Widziałem aplikacje takie jak WhatsApp Desktop utrzymujący uchwyty na Chrome Canary poprzez proces systemowy . Ponieważ nie można wysunąć dysku startowego (ponieważ jest on w użyciu), rozwiązaniem było użycie innego nifty Sysinternals narzędzia, o nazwie Handle . Po zamknięciu programu, który ma zablokowany plik, uruchom uchwyt i uruchom (jako przykład) handle64 "Chrome SxS\Application\chrome.exe", aby zobaczyć, czy uchwyty są nadal obecne na pliku, który ma blokadę PID 4. Metodą prób i błędów zamykaj każdy uruchomiony program, aż nie będzie już żadnych uchwytów na zablokowanym pliku.

Najlepsza metoda (płatna)

Pobierz i uruchom program SafelyRemove . Pomaga on wysunąć dysk, a jeśli nie może tego zrobić, wyświetla, które procesy mają na nim blokadę:

.

60
60
60
2009-12-24 17:03:57 +0000

Możesz użyć Sysinternals Process Explorer aby znaleźć uchwyt dla każdego pliku, który jest otwarty. Po prostu wybierz menu Find i wybierz Find Handle or DLL. W otwartym oknie dialogowym wpisz literę dysku w polu wyszukiwania. Wyniki wyszukiwania powinny pokazać wszystkie pliki, które są otwarte z dysku i który proces ma je otwarte.

6
6
6
2018-03-09 07:36:41 +0000

Możesz również użyć wiersza poleceń do zapytania dziennika Windows , za pomocą wevtutil.exe (od Windows 7) z wiedzą, że Windows Kernel-PnP używa Event ID 225 do rejestrowania odmowy systemu (zawsze z id procesu 4) usunięcia lub wysunięcia urządzenia USB (gdzie znaki # oznaczają liczby szesnastkowe).

wevtutil qe System /q:"*[System[(EventID=225)]]" /c:5 /f:text /rd:true
  • qe System : zapytanie o zdarzenia z dziennika systemowego
  • /q : zapytanie z XPath
  • EventID=225 oznacza, że system odmówił wysunięcia urządzenia
  • /c:5 : liczba wpisów do pobrania (tutaj 5)
  • /f:text : format (domyślnie xml)
  • /rd:true : kolejność odwrotna (najpierw najnowsze)

Używam tego w skrypcie wsadowym.

6
6
6
2018-09-07 16:15:11 +0000

Oto szybkie polecenie PowerShell do odpytywania dziennika zdarzeń i pokazywania, która aplikacja blokuje wysuwanie dysku (działa u mnie z Windows 10, prawdopodobnie działa też z 7/8)

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

Wyjście wyświetli wszystkie przypadki w ciągu ostatniej godziny, w których system nie mógł wysunąć dysku. Kolumna Message pokazuje proces, który zablokował wysuwanie dysku. W moim poniższym przykładzie winowajcą był menedżer zadań i udało mi się wysunąć dysk po zamknięciu menedżera zadań.

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_557500445301013C111B1A0.
   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_557500445301013C111B1A0.
5
5
5
2016-01-12 12:44:42 +0000

Dla mnie (Windows 7).

  1. Wciśnij klawisz Windows
  2. W “szukaj programów i plików: wpisz: diskmgmt.msc
  3. Na liście wyszukiwania znajdź pozycję i kliknij prawym przyciskiem myszy - wybierz uruchom jako administrator
  4. Wprowadź poświadczenia administratora, aby uruchomić "Zarządzanie dyskami” (jeśli jest to wymagane)
  5. Znajdź na liście dysków dysk usb, który nie chce się wysunąć
  6. Lewy panel, kliknij prawym przyciskiem myszy i wybierz “ Eject
  7. Uchwyty “powinny” się zamknąć - zawsze możesz sprawdzić dwukrotnie w sys internals process explorer

Uwaga: “Bezpieczne usuwanie sprzętu i wysuwanie nośników” ikona paska zadań nie pokazuje już napędu usb - tylko trzy kropki

  1. Fizycznie usuń napęd
3
3
3
2016-12-21 17:48:21 +0000

Możesz uruchomić resmon.exe (przez WIN+R), przejść do disk > Disk Activity > Sort by File Teraz możesz zobaczyć wszystkie pliki, do których ma dostęp system i które procesy mają do nich dostęp, uporządkowane według ścieżki do pliku (która btw zaczyna się od litery dysku). Może nie działać we wszystkich przypadkach, ale jest to proste podejście.

Ponowne uruchomienie komputera wydaje się “uwolnić” użycie urządzenia. Również dla szybszego usuwania, można wyłączyć buforowanie windows w sekcji Hardware urządzenia, czasami windows zajmie dłużej niż oczekiwano, aby przepłukać cache na dysk zewnętrzny i wyświetli komunikat, że urządzenie jest w użyciu (ponieważ będzie, przez samego Windowsa)

2
2
2
2016-12-03 20:50:45 +0000

Jeśli otworzysz “Mój komputer” i Twój dysk nie jest wymieniony w nagłówkach “Pamięć wymienna”, to znaczy, że Windows z jakiegoś powodu traktuje go jako stały zasób systemowy. Będziesz musiał odmontować wszystkie partycje na dysku.

Jeśli tak jest, otwórz “Zarządzanie komputerem”, a następnie przejdź do “Zarządzania dyskami”. Dla każdej partycji na urządzeniu, kliknij prawym przyciskiem myszy na partycję, wybierz “Zmień litery napędów i ścieżki” i usuń wszystkie litery napędów przypisane do tej partycji. Gdy to zrobisz, powinieneś zauważyć, że funkcja “bezpiecznego wysuwania” działa tak, jak się spodziewałeś.

0
0
0
2018-03-26 07:53:55 +0000

Miałem USB, które windows zgłaszał jako używane…tak samo jak wszyscy tutaj.

W Windows 10 Ctrl+Alt+Del przechodzi do Menedżera zadań.

Znajdź przez przewijanie - Eksplorator Windows. i podświetl.

Na dole po prawej jest miły przyjazny przycisk “Restart Process”

Dwa razy potrójnie sprawdź, czy “Windows Explorer” jest jedyną podświetloną rzeczą.

Kliknij lewym przyciskiem myszy przyjazny przycisk “Uruchom ponownie proces”.

Ja miałem tylko jednego Explorera, inni czasami mają dwa. Zwróć uwagę, który z nich się włączył. Spróbuj zamknąć/wysunąć USB. Mój działał dobrze, zamknij USB.

Jeśli Twój nie wysuwa/zamyka, to prawdopodobnie był to drugi Explorer. Spróbuj ponownie i zrestartuj ten. Powodzenia.