Имя: Пароль:
IT
Админ
Как безопасно извлечь флэшку из командной строки?
0 D_Pavel
 
29.11.12
13:23
Как безопасно извлечь флэшку из командной строки?
1 Sakura
 
29.11.12
13:24
sudo umount /dev/sdc1
2 Wobland
 
29.11.12
13:25
в NicOS, надеюсь?
3 Cube
 
29.11.12
13:25
4 Kavar
 
29.11.12
13:25
Я вот эту прогу использую:
http://safelyremove.com/ru/help/ht_useCommandLine.htm
5 D_Pavel
 
29.11.12
13:26
В винде конечно!
6 Wobland
 
29.11.12
13:26
(3)(4) грязные виндузятники
7 Wobland
 
29.11.12
13:26
(5) почему конечно?
8 D_Pavel
 
29.11.12
13:26
В линухе таких проблем нет
9 Fish
 
29.11.12
13:26
(0) Зачем ты флешку воткнул в командную строку? Тут без хирурга не обойтись, имхо :)
10 Cube
 
29.11.12
13:26
(6) См (5), что, съел?))
11 Cube
 
29.11.12
13:27
(9) Зачет)
12 D_Pavel
 
29.11.12
13:27
Fish ответил лучше всех.
Cube хуже всех.

Еще варианты есть?
13 Cube
 
29.11.12
13:28
(12) А Kavar ?
14 Wobland
 
29.11.12
13:29
(13) а ему приз зрительских симпатий
15 D_Pavel
 
29.11.12
13:33
Кому? Что там было? Я выходил на минутку в одно место, поссать.
16 D_Pavel
 
29.11.12
13:35
А, всё, появилось. Был глюк, после (12) сразу (14)
То что Kavar писал я уже смотрел. Нужно встроенную в виндовс прогу, типа rundll32 shell32.dll,Control_RunDLL hotplug.dll
17 Wobland
 
29.11.12
13:37
(15) конец безопасно извлекал?
18 D_Pavel
 
29.11.12
13:37
На горячую
19 Kavar
 
29.11.12
13:37
(16) Тогда скорее всего никак. через cmd можно вызвать диалог отключения устройства, но все равно придется кнопку жать.
20 D_Pavel
 
29.11.12
13:40
(19) Если знать ГУИД, можно так: rundll32.exe hotplug.dll,HotPlugSafeRemovalNotification \\.\pipe\PNP_HotPlug_Pipe_0.{52BC089A-8439-41A5-9AA8-EBCB53D46B7D}
Только ГУИД всегда разный (((
21 Cube
 
29.11.12
13:42
(20) Ну вот, осталось получить гуид и дело в шляпе!)
22 D_Pavel
 
29.11.12
13:43
как его получить? Перебором не предлагать!
23 Cube
 
29.11.12
13:44
(22) А что, перебором долго?
24 Cube
 
29.11.12
13:44
+(23) В смысле перебором устройств, а не гуидов)
25 D_Pavel
 
29.11.12
13:47
А где взять список для перебора?
26 Cube
 
29.11.12
13:54
(25) Правильный вопрос, но я в этом не силен)
27 D_Pavel
 
29.11.12
13:56
Такая вот фигня есть: Driveletter = I:  ; Set this to the drive letter you wish to eject.

hVolume := DllCall("CreateFile"
   , Str, "\\.\" . Driveletter
   , UInt, 0x80000000 | 0x40000000  ; GENERIC_READ | GENERIC_WRITE
   , UInt, 0x1 | 0x2  ; FILE_SHARE_READ | FILE_SHARE_WRITE
   , UInt, 0
   , UInt, 0x3  ; OPEN_EXISTING
   , UInt, 0, UInt, 0)
if hVolume <> -1
{
   DllCall("DeviceIoControl"
       , UInt, hVolume
       , UInt, 0x2D4808   ; IOCTL_STORAGE_EJECT_MEDIA
       , UInt, 0, UInt, 0, UInt, 0, UInt, 0
       , UIntP, dwBytesReturned  ; Unused.
       , UInt, 0)
   DllCall("CloseHandle", UInt, hVolume)
}
28 D_Pavel
 
29.11.12
13:56
Скрипт, надо разобраться и всё
29 AMur
 
29.11.12
14:03
(0) Прошу прощения, а зачем нужно извлекать флешку в командной строке? Может и мне пригодится?   )))
30 Юрий Лазаренко
 
29.11.12
14:22
(9) Зачем хирург? Регулярными выражениями нефиг делать достать можно! )
31 mr_fix
 
29.11.12
14:30
32 D_Pavel
 
30.11.12
05:56
(29) чтобы сделать скрипт который по определенному событию запишет все незаписанные файлы на флэшку, и подготовит комп к выключению, после чего на экране появится сообщение что всё сохранено, можно вырубать. А иначе приходится ждать неопределенное время после закрытия программ, не понятно сколько. Часто при загрузке винда говорит что флэшку необходимо проверить на ошибки если не достаточно ждал.
33 D_Pavel
 
30.11.12
05:57
(31) Это про линух, не подходит
34 mr_fix
 
30.11.12
12:02
(33) Внимательно читал? :)
По ссылке
[ Я написал аналогичную программу, также названную Sync, которая работает во всех версиях Windows.]