Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 30.06.2010, 09:55   #1
Denager
Москоу
Форумчанин
 
Регистрация: 29.01.2008
Сообщений: 138
По умолчанию Узнать дескриптор процесса, блокирующего USB

Использую для извлечения USB-устройства функцию
Код:
CM_Request_Device_Eject(Parent, nil, @VetoName, MAX_PATH, 0); //SETUPAPI.DLL
Если VetoName возвращает '', то выводится сообщение, что устройство может быть успешно извлечено.
Иначе, - ошибка извлечения. Хотелось бы обработать ошибку и найти незакрытые дескрипторы файлов и папок на выбраном USB-устройстве

Последний раз редактировалось Denager; 30.06.2010 в 09:58.
Denager вне форума Ответить с цитированием
Старый 01.07.2010, 15:25   #2
Denager
Москоу
Форумчанин
 
Регистрация: 29.01.2008
Сообщений: 138
По умолчанию

Копал в сторону "занятых файлов". Но неужели если у меня будет ошибка извлечения, придется сканировать полностью систему на файлы/папки на занятые файлы и искать описатели процессов, которые из "заняли"?
Или как все-таки работает Safely Remove

Последний раз редактировалось Denager; 01.07.2010 в 15:54.
Denager вне форума Ответить с цитированием
Старый 01.07.2010, 15:56   #3
JTG
я получил эту роль
Старожил
 
Аватар для JTG
 
Регистрация: 25.05.2007
Сообщений: 3,694
По умолчанию

Угу, придётся все открытые дескрипторы, что-то вроде такого http://forum.sources.ru/index.php?showtopic=153063
пыщь
JTG вне форума Ответить с цитированием
Старый 01.07.2010, 16:09   #4
Denager
Москоу
Форумчанин
 
Регистрация: 29.01.2008
Сообщений: 138
По умолчанию

JTG, да спасибо, это уже есть в арсенале, как и все статьи на первых 10 страницах гугла по данной теме.
Но есть вопрос тогда: программа Unlocker. Перехватывает API функции (Ошибка удаления/переименования) и на их основе выводит сообщение о блокируемом файле, но.. она тут же выводит спсиок процессов, блокирующих операцию с файлом.
По этому поводу нету размышлений? Я думаю..
Denager вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
OpenProcess не возвращает дескриптор :(((( exclu$ive Win Api 4 20.01.2014 07:46
Дескриптор окна DeFace Win Api 10 11.10.2009 16:52
Узнать путь USB устройства dimonbest Win Api 0 27.07.2009 12:58
как узнать Pid процесса которому принадлежит окно Пепел Феникса Win Api 3 13.04.2009 13:37
Узнать характеристики процесса miha030880 Win Api 6 09.01.2009 16:48