Страница 1 из 2
Консольная программа для смены буквы диска (флешки)
Добавлено: Ср июн 20, 2012 20:52
Mellomann
Кто поможет?
Имеем некую флешку, которая на разных компах назначается на разные буквы.
Нужно создать кнопку для ТК, которая будет менять букву указываемого диска на нужную.
В идеале должно выглядеть примерно так: "
<программа-буквоменялка.exe> <буква-было> <буква-стало>".
Есть ли такое в принципе?
Есть ли возможность проделать это штатными средствами винды при помощи ком.строки? (соответственно, её команду и вписал бы в кнопку)
Сообщения выделены в отдельную тему из Обмен кнопками
Моторокер.
Добавлено: Ср июн 20, 2012 21:45
Вахмурка
Добавлено: Ср июн 20, 2012 21:51
Mellomann
Вахмурка
Нет, мне не клонировать диски нужно, и именно сменить букву.
Т.е., например, меняем D: на H: и после этого у нас уже нет диска D:, а только H:.
Должно выполняться действие, которое можно в гуишном виндовом диспетчере дисков сделать, изменяя букву вручную. С одной лишь разницей - мне нужна консольная комманда (которую можно автоматизировать), а не блуждание по ветвям "управления компом" каждый раз...
Добавлено: Ср июн 20, 2012 22:25
Вахмурка
subst - это консольная коМанда (с одной "М", "Коммандо" - это фильм со Шварценеггером), а по второй ссылке рекомендуется почитать начиная со слов "Using a command line"

Добавлено: Ср июн 20, 2012 23:07
Mellomann
Вахмурка писал(а):subst - это консольная коМанда (с одной "М", "Коммандо" - это фильм со Шварценеггером),
точно, совсем уж в буквах запутался за день... так и скачут...
Вахмурка писал(а):а по второй ссылке рекомендуется почитать начиная со слов "Using a command line"

там рассматривается в более сложном виде и опять-таки с привязкой к командам внутри программы, привязываясь к номерам партиций.
Мне бы нечто вроде такого, к примеру:
<прога.exe> %commander_drive% h:
Добавлено: Ср июн 20, 2012 23:16
Tol!k
Добавлено: Ср июн 20, 2012 23:38
Mellomann
Tol!k
Предложеный вариант интересен, но, к сожалению, для использования неопытными юзерами (что будет в моей задаче позже) малопригоден и опасен.
Есть ли способ без опасности для C: и не работающий при использовании диска?
Добавлено: Чт июн 21, 2012 00:28
Tol!k
два
?
Флешке присвоить уникальную метку {WINDOWS VISTA (игровая)} ;
из списка дисков убрать С: (вдруг метка окажется не такая уж уникальная)
Добавлено: Чт июн 21, 2012 11:26
Mellomann
Tol!k
А если флешек много, они подписаны по фамилиям работников, и почти не бывают повторения?
Слишком долго будет на каждого настраивать. ПРоще тогда уже руками было бы.
А по тому синтаксису, что я изначально думал, есть софтинка?
Добавлено: Чт июн 21, 2012 17:00
Flasher
Добавлено: Чт июн 21, 2012 17:40
Mellomann
Спасибо! Вроде бы в самый раз.
Вечером дома гляну.
Добавлено: Чт июн 21, 2012 18:09
Tol!k
подписаны по фамилиям работников
только фамилия, без И.О. (без пробелов)?
Буква д.б. у всех одинаковая?
Модераторы
надо бы выделить в отдельную тему, кнопка здесь явно не самое главное
Добавлено: Чт июн 21, 2012 21:21
Tol!k
Код: Выделить всё
@echo off &setlocal enableextensions &chcp 1251 >nul
set Label=Иванов Петров Сидоров
for %%a in (Z Y X W V U T S R Q P O N M L K J I H G F E D) do (
if exist %%a:\. for /f "tokens=6,*" %%b in ('vol %%a:') do (
for %%l in (%Label%) do if /i "%%c"=="%%~l" set "Drive=%%a"
)
)
if not "%Drive%"=="" (echo Letter: %Drive%) else (echo Label not found.)
if not "%Drive%"=="" if exist "ReMount.exe" (
%ComSpec% /C "ReMount.exe" -ReMount %Drive%: R: -f
) else (
echo File ReMount.exe is not exist.
)
Добавлено: Пт июн 22, 2012 00:22
Mellomann
Tol!k писал(а):только фамилия, без И.О. (без пробелов)?
Буква д.б. у всех одинаковая?
Если бы была система - было бы проще. У кого как, кто пишет полностью, кто сокращает, порядок ф.и.о./и.о.ф./... различается. Да и за этим не особо важно, главное - просто отличать где чьё дабы не было путаницы.
Tol!k писал(а):надо бы выделить в отдельную тему, кнопка здесь явно не самое главное
изначально была идея именно про кнопку, и при помощи утильки замечательно решается.
код вышел простой:
Код: Выделить всё
TOTALCMD#BAR#DATA
%PROGRAMFILES%\ReMount131\ReMount.exe
. H:
%PROGRAMFILES%\ReMount131\ReMount.exe
ReMount
%PROGRAMFILES%\ReMount131\
0
-1
Задача решена. Всем спасибо!
Добавлено: Сб июн 23, 2012 20:12
Tol!k
код вышел простой:
Нужно будет переходить на флешку, а батник можно запускать из любого места
кто пишет полностью, кто сокращает, порядок ф.и.о./и.о.ф./... различается.