42

Иногда, когда я следую процессу безопасного извлечения USB-накопителя, мне говорят, что я не могу извлечь накопитель, потому что некоторые программы используют его. Однако я не могу сказать, что это за программы, поэтому мне приходится закрывать программы - иногда даже случайно.

Как узнать, какая программа использует мой USB-накопитель?

Я искал в Интернете, но не нашел ничего перспективного; Одно из решений может быть через Process Explorer, поскольку он показывает дескрипторы, но я не знаю, как использовать его для решения моей проблемы.

Лучшим решением было бы иметь программу, которая может автоматически закрывать эти программы для меня или, по крайней мере, сказать мне, что это за программы.

9 ответов9

24

Этот инструмент и этот инструмент выглядят так, как будто бы они служат цели, которую вы пытаетесь достичь. Интерфейс NirSoft немного менее прямой, но я доверяю автору и его способности писать код. Второй, кажется, имеет более полезный пользовательский интерфейс в вашей ситуации, но у меня нет истории с веб-сайтом или автором.

ProcessExplorer - это еще один простой способ сделать это, просто откройте ProcessExplorer, нажмите Ctrl+F и введите имя файла. ProcessExplorer перечислит все программы, использующие этот файл. Если у вас не работает инструмент WhoLockMe, я бы порекомендовал ProcessExplorer просто потому, что у него так много других полезных функций.

6

Я использую EjectUSB (рабочая ссылка для скачивания):

EjectUSB можно рассматривать как ядерный вариант USB-накопителей, которые просто не будут правильно извлекаться в Windows, потому что к нему есть «приложение или процесс». Поместите EjectUSB на свой флэш-накопитель и запустите его, и программа будет безжалостно уничтожать каждую программу, процесс или что-либо еще, касающееся вашего диска, позволяя вам безопасно удалить его, не опасаясь потери данных.

4

В Windows 7 Pro это работает:

  1. Откройте "Мой компьютер"
  2. Найдите USB-диск, о котором идет речь
  3. Щелкните правой кнопкой мыши на USB-накопителе.
  4. Нажмите на кнопку "извлечь"; Теперь вы получите сообщение «... используется ...» - обратите внимание, что у него есть кнопка "Продолжить"!
  5. Нажмите "Продолжить", чтобы принудительно снять монтировку, и у вас все будет готово.

В соответствии с предыдущим ответом, вероятно, было бы неплохо убедиться, что USB-накопитель настроен на быстрое удаление. Это ДОЛЖНО гарантировать, что нет открытых пишет .... ymmv

3

В окне просмотра событий (проверено в windows 10) -> Журналы Windows -> Система - вы можете увидеть, что произошло.

Пример:

Приложение \Device \HarddiskVolume1 \Program Files \Security \AVAST Software \Avast \AvastSvc.exe с идентификатором процесса 2080 остановило удаление или извлечение для устройства USB \VID_0BC2 & PID_2300 \2GH4ER2Z ____.

2

Решение @Darth Android также работает с Process Hacker

  1. Ctrl+F
  2. Введите букву диска, например. E:
  3. Бам! Список программ, вторгающихся в ваше устройство
1

ProcMon от Sysinternals позволит вам отслеживать все действия с файлами и реестром и фильтровать только те записи, которые ссылаются на ваш флэш-накопитель. Это может быть более подробный способ рассказать обо всех процессах, которые используют ваш диск.

Кроме того, в зависимости от версии Windows, могут использоваться приложения по умолчанию, использующие диск.

Если Win7, проверьте, включен ли SuperFetch на флэш-накопителях USB. Если XP, проверьте, включено ли кэширование записи на диск.

SuperFetch позволяет Windows использовать временное хранилище в качестве дополнительной "оперативной памяти", перемещая кеш диска с системного диска. Кэширование записи на диск позволяет быстрее выполнять передачу файлов на съемные диски и с них, фактически происходя в фоновом режиме и во время простоя системы.

1

Я вижу это случайно на внешних дисках в формате NTFS (HD и Flash). Даже когда они настроены на "Оптимизация для быстрого удаления" в диспетчере устройств, что-то в системе (возможно, драйвер файловой системы) удерживает то, чего не должно. Ни один инструмент, который я нашел, не способен даже отобразить, какой ресурс удерживается, и Process Explorer не показывает никаких открытых дескрипторов устройства или каких-либо его файлов.

Единственный выход, который я нашел, это либо выключить систему, либо использовать инструмент sync Sysinternal, чтобы очистить все буферы файловой системы и просто выдернуть шнур. Когда я выполняю "грязное" извлечение, я немедленно присоединяю, запускаю chkdsk и после этого могу нормально извлечь диск.

1

Попробовав много инструментов, я остановился на Unlocker, который помогает в тех случаях, когда Windows жалуется на заблокированные файлы и т.д. Вы можете получить его по адресу http://www.filehippo.com/download_unlocker/. Хотя утилита nirsoft и Process Explorer работают, я думаю, что они предназначены для опытных пользователей. Для быстрого выхода, если способ решения Unlocker работает.

0

Я решил свою проблему, установив диск в автономном режиме следующим образом:

  1. Перейти к "Этот ПК" -> "Управление" -> "Управление дисками"
  2. Щелкните правой кнопкой мыши значок диска на карте разделов ниже.
  3. Нажмите "Оффлайн"

Диск в карте разделов теперь должен быть удален. Вы должны быть в состоянии безопасно удалить диск без ошибок.

Не забудьте настроить его в следующий раз после подключения накопителя.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .