Войти

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


Valek271183
01-10-2013, 12:52
Как можно автоматически изменить букву флешки командной строкой, VBS или как то ещё. что бы она у меня стала буквой "X"

Iska
01-10-2013, 13:35
Объясните, что Вы в данном случае понимаете под словом «автоматически»?

Valek271183
01-10-2013, 13:54
я имею ввиду запуском какого-нибудь файла, а не в ручную через управление дисками

LehaMechanic
01-10-2013, 14:17
Можно не изменять букву, а зафиксировать раз и навсегда для данной конкретной флешки с помощью USB Safely Remove. Это самое простое. Хотя вот сейчас проверил, через управление дисками назначил букву X, вынул, вставил в другой разъем, она всё равно автоматом стала "X" без всяких сторонних программ и файлов. В чем проблема-то?

Все скрипты и прочее смотрите там:
Как зафиксировать букву для флешки (http://alex-zone.nnover.ru/any-notes/7449014.html)

Valek271183
01-10-2013, 17:18
Помог вот такой вариант:

@echo off
cd /d c:
for /f "tokens=*" %%a in (' mountvol %~d0 /l ') do ( mountvol %~d0 /d & mountvol W: %%a & exit )

Возможен ли еще такой вариант, что буква флешки применится только после перезагрузки?

sunnykey
04-10-2013, 15:14
@echo off
setlocal EnableExtensions EnableDelayedExtension
chcp 65001
set cfg=%tmp%\dp.cfg
set log=%tmp%\dp.log
echo Get volume list
echo list volume > %cfg%
diskpart /s %cfg% > %log%
echo Get USB drive letter
for /f "tokens=2-3 delims= " %%i in ('findstr /c:Removable %log%') do (
set num=%%i
set ltr=%%j
)
echo Change USB drive letter
echo select volume %num% > %cfg%
echo remove letter=%ltr%>>%cfg%
echo assign letter=X>>%cfg%
diskpart /s %cfg%
echo Remove setting
chcp 866
if exist %cfg% (del %cfg%)
if exist %log% (del %log%)
меняет диск на горячую
З.Ы. Тестировалось с одной флешкой

Valek271183
04-10-2013, 15:47
а можно ли сменить букву не на горячую, а после перезагрузки?

sunnykey
04-10-2013, 17:26
а можно ли сменить букву не на горячую, а после перезагрузки? »
Можно, перезагрузи и выполни мой скрипт




© OSzone.net 2001-2012