Статья
Версия для печати
Обсудить на форуме
Windows. Subst. Mountvol.
Сопоставить имя диска с указанным путем.


Автор: Sla
Первоисточник: http://slasoft.kharkov.ua/article/subst


Что делать, если нет гибкого диска, но ПО требует его наличия.
Некоторые системы требуют хранения «секретных данных» на сменных носителях. И это во время новейших технологий!
Но, как известно, не все вечно, а тем более современные дискеты. И несмотря на наличие новых технологий, дискеты пока не отмирают. Но вот что касается их качества, то оно ухудшается с каждым годом.
Это было маленьким отступлением. А теперь приступим к делу. Но сначала все по порядку.

Задача: хранение ключей на жестком диске.
Решение.


C:\>subst /?
Сопоставление имени диска указанному пути.

SUBST [диск1: [диск2:]путь]
SUBST диск1: /D

  диск1:         Виртуальный диск, который сопоставляется указанному пути.
  [диск:]путь    Физические диск и путь,
                 которым сопоставляется виртуальный диск.
  /D             Удаление ранее созданного виртуального диска.

Введите SUBST без параметров для вывода текущего списка виртуальных дисков.


На текущий момент у меня нет назначенных виртуальных дисков. Создаем каталог, где будем хранить ключи. И сопоставляем диск «B:» требуемому пути.


C:\>mkdir d:\key
C:\>subst b: d:\key
C:\>subst
B:\: => D:\key
C:\>dir b:
 Том в устройстве B имеет метку EXT
 Серийный номер тома: 34CC-3811

 Содержимое папки B:\

18.12.2009  11:15    <DIR>          .
18.12.2009  11:15    <DIR>          ..
               0 файлов              0 байт
               2 папок  12 553 900 032 байт свободно


Теперь преспокойно указываем местом хранения сменный диск «B:».
Казалось бы, ВСЁ, что еще надо?
Но не тут-то было. Попалась в руки программа, которая требовала диск «A:».
Не хочу!!! Но не могу!


C:\>subst a: d:\key
Недопустимый параметр: A:


Почему? Потому что у меня есть уже дисковод!
И здесь приходит на помощь mountvol.


C:\>mountvol /?
Создание, удаление и просмотр точек подключения.

MOUNTVOL [<диск>:]<путь> <имя тома>
MOUNTVOL [<диск>:]<путь> /D
MOUNTVOL [<диск>:]<путь> /L

   <путь>       Существующая папка NTFS, в которой будет
                располагаться точка подключения.
   <имя тома>   Имя подключаемого тома.

   /D           Удаление точки подключения тома из заданной папки.
   /L           Вывод списка имен подключенных томов для заданной папки.

Возможные значения имени тома вместе с текущими точками подключения:

    \\?\Volume{3d4f0038-91ba-11db-8949-806d6172696f}\
        C:\

    \\?\Volume{3d4f0039-91ba-11db-8949-806d6172696f}\
        D:\

    \\?\Volume{0191ca61-a151-11db-a468-0018f35dd0a2}\
        X:\

    \\?\Volume{3d4f0036-91ba-11db-8949-806d6172696f}\
        A:\


О! То, что надо! Приступим!


C:\>mountvol a: /d

C:\>mountvol
Создание, удаление и просмотр точек подключения.

MOUNTVOL [<диск>:]<путь> <имя тома>
MOUNTVOL [<диск>:]<путь> /D
MOUNTVOL [<диск>:]<путь> /L

   <путь>       Существующая папка NTFS, в которой будет
                располагаться точка подключения.
   <имя тома>   Имя подключаемого тома.

   /D           Удаление точки подключения тома из заданной папки.
   /L           Вывод списка имен подключенных томов для заданной папки.

Возможные значения имени тома вместе с текущими точками подключения:

    \\?\Volume{3d4f0038-91ba-11db-8949-806d6172696f}\
        C:\

    \\?\Volume{3d4f0039-91ba-11db-8949-806d6172696f}\
        D:\

    \\?\Volume{0191ca61-a151-11db-a468-0018f35dd0a2}\
        X:\

    \\?\Volume{3d4f0036-91ba-11db-8949-806d6172696f}\
        *** НЕТ ТОЧЕК ПОДКЛЮЧЕНИЯ ***


C:\>subst a: d:\key

C:\>dir a:
 Том в устройстве A имеет метку EXT
 Серийный номер тома: 34CC-3811

 Содержимое папки A:\

18.12.2009  11:15    <DIR>          .
18.12.2009  11:15    <DIR>          ..
               0 файлов              0 байт
               2 папок  12 553 891 840 байт свободно


Ура! Получилось!!!
Рано радоваться. Все это, конечно, работает и будет работать. Но! А как вернуть все назад?
Читаем внимательно, что нам говорят ключи команды!
Ищем строку тома, помеченную как неподключенная и...


C:\>mountvol a: \\?\Volume{3d4f0036-91ba-11db-8949-806d6172696f}\


Все. Теперь осталось только автоматизировать размонтирование-сопоставление-монтирование.
Версия для печати
Обсудить на форуме