Настройка преобразования длинных имён файлов и каталогов в короткие при записи
Как известно, длинные имена файлов и каталогов в DOS записываются, сами знаете в каком виде (например, Длинный файл-txt запишется как ДЛИННЫ~1.TXT). Однако не всегда в этом есть необходимость, а иногда это просто неудобно. Например, если в одном каталоге находятся Norton Commander, Norton Utilities, Norton Navigator, Norton Crash Guard, (что там ещё у Нортона есть), то в DOS'obckom NC это будет выглядеть как: NORTON~1 NORTON~2 NORTON~3 NORTON~4 что, согласитесь, не очень-то информативно. А можно сделать, чтобы по умолчанию имя записывалось длиной в 8 символов, и только при необходимости добавлялась тильда. То есть так: NORTONCO NORTONCR NORTONNA NORTONUT по крайней мере, ясно, где что. И только если появится ещё, скажем Norton Utilities 2.0, то появится запись NORTON~l.
А делается это очень просто. Открываем раздел
НКЕY_LOCAL_MACHINE\System\CurrentControlSet\control\FileSystern
находим двоичный параметр "NameNumericTail" (а скорее — не находим, ибо по умолчанию его нет; тогда создаём) и устанавливаем его значение как "00 00 00 00".
И всё. После перезагрузки упомянутый выше Длинный файл. txt можно будет записать как ДЛИННЫЙФ.TXT.
Выполнение приведённой рекомендации чревато некоторыми опасными последствиями. Дело в том, что в Windows у файлов, имена которых набраны только заглавными латинскими буквами и имеют длину не более 8 символов, длинного имени НЕТ вообще. В результате при попытке записать в один каталог файлы с именами, например, FILENAME.TXT (8 символов) и FILENAME2.TXT (9 символов) система, сравнив их по коротким именам, скажет: "Файл существует. Заменить?".
Описанный случай не так уж редок: в каталогах текстов и рисунков сплошь и рядом можно увидеть "DOCUMENT.DOC" и "DOCUMENT2.DOC", либо "PICTURE1.JPG" и "PICTURE11.JPG". Без "хвостов" Windows будет их постоянно путать и пытаться наложить. Во избежание этого можно посоветовать ставить параметр "NameNumericTail" равным 0 только на период набивки машины программным обеспечением. А перед началом загрузки пользовательскими данными снова поставить 1 (либо уничтожить вообще). Тогда уже созданные каталоги Нортона, Офиса и т. д. будут красиво записаны без "~1 ~2 ~3", но и в дальнейшем путаницы происходить не будет.
Команды с сетевыми именами в DOS-окне
Окно DOS понимает сетевые имена. Т. е. можно, например, напечатать DIR \\server\share и получить список файлов. Команда CD не работает, но многие другие — вполне.
Например: COPY, MOVE, REN, MD, RD…
Автозапуск программ при переходе из Windows в режим DOS
Если Вы хотите, чтобы при выборе команды "Перезагрузить компьютер в режиме эмуляции MS-DOS", после завершения работы Windows, автоматически запустилась какая-то программа (например, Нортон командир), то впишите необходимые команды в файл dosstart.bat, который находится в папке Windows.
Копирование изображения из DOS-программы
Если Вам надо скопировать картинку из DOS-программы, то нажмите <Alt>+<Enter>, чтобы свернуть её в окно. Щёлкните по левому верхнему углу и выберите "Правка/Выделить" (Edit/Mark). Выделите нужный кусок и выберите "Правка/Копировать" (Edit/Copy). Теперь Вы можете вставить этот кусок в любую графическую программу.
Перетаскивание файлов и каталогов из "Проводника" в DOS-окно
Если перетащить файл из "Проводника" в окно DOS-сессии, то в командной строке появится его имя, включая полный путь. Соответственно, если перетащить папку, то появится только путь.
Передача переменных параметров DOS-программам в Windows
В Windows при запуске DOS-программы с помощью ярлыка можно настроить запрос параметров для неё. Это очень удобно, если часто требуется запускать программу с различными параметрами. Для этого в свойствах ярлыка к DOS-программе в поле "Командная строка" в конце строки добавьте пробел и знак вопроса. В следующий раз при запуске ярлыка появится окно запроса параметров, в котором их можно будет ввести для передаче программе.
Отключение звукового сигнала при переключении DOS-раскладки клавиатуры
Если вас достало пищание спикера каждый раз, когда вы переключаете раскладку в DOS-окне, тогда сделайте следующее. Возьмите любой hex-редактор (например, hiew). В папке "c: \windows\command" откройте файл KEYB.COM и найдите последовательность 1F 5В 5Е FB СЗ 2Е 80. Замените последние два байта на ЕВ 2F. В итоге у вас должно получиться: 1F 5В 5Е FB С3 ЕВ 2F. Сохраните сделанные изменения и перезагрузите машину. Теперь ваш спикер при переключении раскладки не будет орать, как резанный, и будить ваших домашних по ночам (может ещё и WinAMP перестать дёргаться во время переключения).
Независимое сохранение раскладки клавиатуры в консольных и DOS-приложениях
Чтобы под Windows 95/98 независимо сохранялось состояние раскладки клавиатуры RU/EN в консольных и DOS-приложениях (например, в разных копиях FAR'а), надо в разделе [NonWindowsApp] файла system.ini добавить строку LocalTSRs=keyb. То, что указано после "=" представляет собой список резидентных программ (tsr), копируемых в локальную виртуальную машину, которые надо записывать через пробел и без расширений. После такого указания в каждой DOS-задаче будет сидеть своя копия поименованных tsr со своим состоянием.
Увеличение максимального числа одновременно открываемых файлов DOS-программами в Windows Me
Windows Me использует из файла Config.sys только информацию о переменных окружения. Если вы используете DOS-программы, которые открывают одновременно более 30 файлов, то вместо команды Files= в Config.sys, используемой ранее, вам надо в разделе [386Enh] файла SYSTEM.INI добавить строку PerVMFiles=<число> где <число> — это количество файлов, которые DOS-программа сможет открыть сверх 30. Максимальное задаваемое значение 225, что соответствует максимум 255 открываемым файлам.
Настройка режима DOS на оптимальное использование памяти
Иногда возникает необходимость загрузить на Windows-машине старую программу для DOS, которая требует МНОГО (более 550 Кб) СТАНДАРТНОЙ памяти. У вас может быть 64 Мб оперативной памяти, но эти программы хотят именно стандартную (conventional) память (первые 640 Кб).
Наиболее часто такое встречается в старых играх, хотя и не только.
Такие программы работать из-под запущенной Windows не будут. Для них надо загружаться в "чистый" DOS (режим командной строки) и настроить его на обеспечение максимальной свободной стандартной памяти, задействовав использование верхней (upper) памяти (диапазон адресов от 640 Кб до 1 Мб) с помощью драйвера EMM386.
Для этого лучше всего написать загрузочное меню в файле CONFIG.SYS:
[common]
dos=noauto
dos=high,umb
fileshigh=40
buffershigh=40
device=c: \windows\himem.sys
country=007,866,с: \windows\command\country.sys
[menu]
menuitem=WIN, Windows
menuitem=DOS, DOS Promtp (Max Memory)
menudefault=WIN, 4
[WIN]
device=c: \windows\ifship.sys
[DOS]
device=c: \windows\emm386.exe ram
В файле AUTOEXEC.BAT пишем:
@echo off
path с: \windows;с: \windows\command
goto %config%
: WIN
win.com
: DOS
mouse.com
В файле MSDOS.SYS находим в секции [Options] строчку BootGUI=1 и вместо 1 пишем 0.
Теперь по окончании выполнения AUTOEXEC.BAT у нас Windows не будет загружаться автоматически, но при выборе в загрузочном меню варианта "Windows" он будет загружаться командой win.com. При выборе варианта "DOS Promtp (Max Memory)" у нас обеспечивается много стандартной памяти, загружается DOS-драйвер мыши и мы остаёмся в DOS.