nesco писал(а):
Задал ты оригинальную задачу, просто так она не решается. Удаляется устройство не сложно, сложно получить хандл этого устройства по букве диска -- вот там такая @па, что я уже какой час над этим бьюсьНадеюсь, что получится
Ответов: 574
Рейтинг: 1
|
|||
nesco писал(а): Задал ты оригинальную задачу, просто так она не решается. Удаляется устройство не сложно, сложно получить хандл этого устройства по букве диска -- вот там такая @па, что я уже какой час над этим бьюсьНадеюсь, что получится |
|||
карма: 0 |
|
Разработчик
Ответов: 26163
Рейтинг: 2127
|
|||
Yuriy писал(а): Надеюсь, что получитсяНу наконц-то получилось (пришел к выводу, что больше пол-нэта барахла) Экспериментальный IC, если будет работать нормально, буду думать о портировании его в FSMonitor |
|||
карма: 22 |
| ||
файлы: 1 | eject_ic_001.sha [8.8KB] [490] |
Ответов: 1328
Рейтинг: 69
|
|||
С флешкой нормально работает и FPC и Delphi, буду дома попробую со сменными дисками.
|
|||
карма: 2 |
|
Разработчик
Ответов: 26163
Рейтинг: 2127
|
|||
Konst писал(а): С флешкой нормально работаетНу, в первую очередь, он под них и затачивался. Хотя, должен работать с любыми REMOVEBL'ами, тк отслеживается общий класс томов и тип устройства -- DRIVE_REMOVABLE |
|||
карма: 22 |
|
Ответов: 1328
Рейтинг: 69
|
|||
Ну например CD-ROM ноутбука он отказался извлекать (это не съемный диск), хотя из трея - отключается
|
|||
карма: 2 |
|
Разработчик
Ответов: 26163
Рейтинг: 2127
|
|||
Konst писал(а): хотя из трея - отключаетсяА как он у тебя в трэй-то попал По идеи, не должно такого быть, так как тип устроства CDROM'а -- DRIVE_CDROM |
|||
карма: 22 |
|
Ответов: 1328
Рейтинг: 69
|
|||
nesco писал(а): А как он у тебя в трэй-то попал
По идеи, не должно такого быть, так как тип устроства CDROM'а -- DRIVE_CDROM Не знаю - он там всегда был, он реально извлекается с боку кнопка нажимаешь и вытаскиваешь. К стати бывает, что туда и диски на SATA попадают, типо можно извлечь диск С |
|||
карма: 2 |
|
Разработчик
Ответов: 26163
Рейтинг: 2127
|
|||
Konst писал(а): Не знаю - он там всегда был, он реально извлекается с боку кнопка нажимаешь и вытаскиваешьА причем здесь трэй и кнопка сбоку Konst писал(а): он отказался извлекатьА какое сообщение выдало, или молча отключила CD в трее и свалило |
|||
карма: 22 |
|
Ответов: 1328
Рейтинг: 69
|
|||
nesco писал(а): А причем здесь трэй и кнопка сбокуЯ имел в виду что он реально съемный, может у него другой тип? nesco писал(а): А какое сообщение выдало, или молча отключила CD в трее и свалило Если ты имеешь в виду твой пример, то выдало сообщение это не съемный диск и не отключила, а если про стрелку в трее, то все так же как с флешкой происходит, после отключения - устройство может быть удалено, и пропадает ярлык сд рома в Мои Комп |
|||
карма: 2 |
|
Разработчик
Ответов: 26163
Рейтинг: 2127
|
|||
Konst писал(а): это не съемный дискСтранно очень... после того, что выдало ничего не должно происходить, ведь даже попытки поиска томов не ведется Попробуй в IC поставить ремарку вот так
И проверь, отсоединится ли диск ------------ Дoбавленo: На сообщения не смотри, просто нужно проверить факт отсоединения устройства в трее. Да, кстати, а диск в устройстве был ------------ Дoбавленo: Konst писал(а): Я имел в виду что он реально съемный, может у него другой тип?Вот, вот -- он наверняка числится съемным (а кто енто тут недавно бил себя пяткой в грудь, что устройства на ноуте не съемные, ась... ) А почему не можем удалить, так уровень родителя выше, том идет второй позицией, а не третьей, и наверняка прога доходит до определения тома, но не может опредилить правильно родителя. |
|||
карма: 22 |
|
Ответов: 574
Рейтинг: 1
|
|||
nesco писал(а): Ну наконц-то получилось (пришел к выводу, что больше пол-нэта барахла)
Экспериментальный IC, если будет работать нормально, буду думать о портировании его в FSMonitor Работает! Спасибочки! Ждём компонент ;) nesco, есть одна просьба. Добавь точку со свойством что это за устройство (по букве диска). То есть, мне нужно как-то узнать, как отрубать устройство через Eject или Unplug. Просто если кард-ридер отрубаю - я же не буду к нему применять Unplug. В общем, я думаю, ты меня понял. Если сделаешь - будет супер! Спасибо-с! |
|||
карма: 0 |
|
Разработчик
Ответов: 26163
Рейтинг: 2127
|
|||
Yuriy писал(а): То есть, мне нужно как-то узнать, как отрубать устройство через Eject или UnplugВсе DRIVE_REMOVABLE (съемные дискы) будут отключаться полным удалением, иначе не получиться. А что, кард-ридер удаляется не как флэшь |
|||
карма: 22 |
|
Ответов: 574
Рейтинг: 1
|
|||
Не пробовал пока. Надо будет глянуть.
|
|||
карма: 0 |
|
Ответов: 5446
Рейтинг: 323
|
|||
nesco, как раз для карт-ридера и нужна операция eject - это отмонтирует карточку, вставленную в кард-ридер, но не отключит сам кард-ридер, тем самым оставляя возможнотсть подключения другой карточки "на лету" (без повторного подключения кард-ридера). Это очень важно для тех, у кого кард-ридер "встроен" в систему, а не подключен к USB или другому порту.
|
|||
карма: 1 |
|
Разработчик
Ответов: 26163
Рейтинг: 2127
|
|||
Ну можно же две точки сделать Eject и Unplug
------------ Дoбавленo: И еще, давайте определимся, какая из этих команд отсоединяет тома, те пропадает буква диска |
|||
карма: 22 |
|