Войти

Показать полную графическую версию : [решено] Как получить порядковый номер диска в качестве переменной


AUTO-NEK
13-01-2011, 06:18
Есть батник в качестве параметра которому требуется указывать порядковый номер диска(номер передает программе). Батник запускается на разных машинах со сменного носителя. Вопрос в том, как можно сделать так чтобы он автоматически получал номер того диска с которого он запускается.

amel27
13-01-2011, 08:08
номер того диска с которого он запускается »
какой номер имеется ввиду?.. серийный, порядковый буквы или тот, что в диспетчере дисков:
wmic diskdrive get deviceid, model

AUTO-NEK
13-01-2011, 18:19
тот который в оснастке Панель управление>Администрирование>Управление компьютером>управление дисками
тоесть порядковый номер диска. (В этот список входят только жесткие диски и сьемные устройства, 1 физическое ус-во 1 номер.)

Да вот deviceid то что нужно, но как получить в переменную deviceid того устройства с которого запущен батник?

ну если есть вариант просто посчитать сколько всего таких устройств в системе, тоже сойдет. Ведь нужное устройство подключаеться последним. Останеться только отнять 1.

SendMessage
14-01-2011, 01:13
Может так?
wmic diskdrive get index

AUTO-NEK
14-01-2011, 02:14
amel27
SendMessage
Спасибо, это именно те номера которые мне нужны, но как узнать и передать в качестве переменной номер конкретного устройства(например по тому что это устройство было подключено последним, по букве или по каким либо индивидуальным параметрам)?

что типо этого
wmic Diskdrive where "volume name=%~d0" get index
только чтобы работало )

SendMessage
14-01-2011, 03:11
как передать наибольший по величине номер в качестве переменной? »
for /f %%I in ('wmic diskdrive get index') do set "DI=%%I"
Получить в переменную индекс диска, на котором запущен батник (виртдиски не катят) можно так:
for /f "tokens=2 delims=#," %%I in (
'wmic path win32_logicaldisktopartition
get dependent^,antecedent ^| find /i "%~d0"'
) do set "DI=%%I"

AUTO-NEK
14-01-2011, 18:57
SendMessage. Спасибо именно это мне и нужно было.




© OSzone.net 2001-2012