Вы находитесь на странице: 1из 11

Библиотека

Братьев
Фроловых

Книги
Компьютер IBM PC/AT, MS-DOS и Windows.
Библиотека системного Вопросы и ответы
программиста
© Александр Фролов, Григорий Фролов
Программирование на JAVA Том 10, М.: Диалог-МИФИ, 1993, 218 стр.
ПК. Шаг за шагом

Другие книги 9.7. Как создать меню в CONFIG.SYS и AUTOEXEC.BAT


Конфигурация аппаратных и программных средств компьютера определяется в
Статьи файле конфигурации CONFIG.SYS и в командном файле AUTOEXEC.BAT.

Восстановление данных Если на компьютере работает несколько человек или вы используете


несовместимые программные продукты, то вам приходится хранить несколько
Антивирусная защита файлов конфигурации CONFIG.SYS и несколько командных файлов AUTOEXEC.BAT.
Статьи для По мере необходимости вам будет нужно переименовывать их и перезагружать
программистов компьютер.
Пользователю компьютера
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
В операционной системе MS-DOS версии 6.0 имеется средство для определения в
одном файле CONFIG.SYS нескольких различных конфигураций. Необходимая
конфигурация выбирается с помощью меню, которое можно описать в файле
CONFIG.SYS.
Для описания меню в MS-DOS версии 6.0 определены несколько специальных
команд:

<Include>
<Menucolor>
<Menudefault>
<Menuitem>
<Submenu>

Команды установки конфигурации компьютера и команды описания меню


группируются в так называемых блоках команд и блоках описания меню. Блоки
начинаются с заголовков. Заголовок состоит из имени блока, заключенного в
квадратные скобки. Блок заканчивается либо заголовком следующего блока, либо
концом файла.
Для определения в файлах CONFIG.SYS и AUTOEXEC.BAT нескольких конфигураций
необходимо выполнить несколько действий:

Определить в файле CONFIG.SYS блок описания основного меню. Описание


меню начинается с заголовка [Menu] и следующими за ним командами
<MENUCOLOR>, <MENUDEFAULT>, <MENUITEM> и <SUBMENU>. Команды
<MENUITEM> и <SUBMENU> определяют элементы основного меню и
соответствующие им имена блоков конфигурации. Команды <MENUDEFAULT> и
<MENUCOLOR> определяют выбираемый по умолчанию элемент меню и цвет
меню.
Для каждого элемента меню создать блок команд в котором описать
необходимую конфигурацию. Эта конфигурация будет устанавливаться, когда
вы выберите соответствующий элемент меню. Каждый блок должен начинаться
Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
с заголовка блока. Заголовок блока представляет собой имя блока
заключенное в квадратные скобки.
При необходимости, вы можете добавить к файлу CONFIG.SYS блок команд с
зарезервированным именем [Common]. Команды из этого блока выполняются
при выборе любой конфигурации. Рекомендуется добавить в конце файла
CONFIG.SYS пустой блок команд с именем [Common].
Когда пользователь выбирает из меню конфигурации какой-либо элемент, его
имя запоминается в переменной окружения CONFIG. С помощью команды
GOTO %CONFIG% вы можете организовать выполнение различных команд в
зависимости от выбранной конфигурации. AUTOEXEC.BAT

Рассмотрим подробнее отдельные команды описания меню.


INCLUDE
Команда используется для включения команд одного блока конфигурации в другой.
Формат данной команды представлен ниже:

INCLUDE=blockname

Единственный параметр blockname определяет имя включаемого блока


конфигурации.
MENUCOLOR
Определяет цвет текста и цвет фона элементов меню. Эта команда может
использоваться только внутри блока описания меню. Команда MENUCOLOR имеет
следующий формат:

MENUCOLOR=x[,y]

Параметр x задает цвет текста элементов меню, а параметр y задает цвет фона
меню. Цвет определяется числами от 0 до 15 в соответствии со следующей
таблицей:

Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
Число Цвет
0 черный
1 голубой
2 зеленый
3 синий
4 красный
5 малиновый
6 коричневый
7 белый
8 серый
9 светло-голубой
10 светло-зеленый
11 светло-синий
12 светло-красный
13 светло-малиновый
14 желтый
15 ярко-белый
Не задавайте одинаковых значений для x и y, так как в этом случае текст
элементов меню сольется с фоном.
MENUDEFAULT
Определяет конфигурацию, загружаемую по истечении заданного времени, если
пользователь не выбрал другую конфигурацию. Команда MENUDEFAULT может
использоваться только внутри блока описания меню файла CONFIG.SYS. Формат
этой команды представлен ниже:

MENUDEFAULT=blockname[,timeout]

Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
Параметр blockname задает имя блока конфигурации, загружаемого по истечении
времени, определенного параметром timeout. Параметр timeout задается в секундах
и может быть от 0 до 90 секунд.
MENUITEM
Команда MENUITEM определяет элементы меню конфигурации. Эта команда может
использоваться только внутри блока описания меню. В одном меню может быть до
девяти элементов. Если этого вам недостаточно, вы можете воспользоваться
дополнительным меню (команда <SUBMENU>). Формат команды MENUITEM следует
ниже:

MENUITEM=blockname[,menu_text]

Параметр blockname определяет имя блока конфигурации, соответствующего


данному элементу меню. Когда пользователь выберет элемент меню, будут
выполнены команды из блока конфигурации, имеющего имя blockname. Имя блока
должно быть короче 70 символов и не должно содержать следующих символов:
слэш (\), обратный слэш (/), двоеточие, точка с запятой, символ равенства и
квадратные скобки.
Параметр menu_text определяет текст, который вы желаете отобразить в данном
элементе меню. Если параметр menu_text не будет определен, то в меню
отобразится название блока конфигурации. Текст задаваемый параметром
menu_text должен быть короче 70 символов и может содержать любые символы.
SUBMENU
Команда SUBMENU добавляет новый элемент в главном меню задания
конфигурации. При выборе элемента меню, заданного командой SUBMENU,
появляется дополнительное меню.
Формат вызова данной команды представлен ниже:

SUBMENU=blockname[,menu_text]

Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
Параметр blockname определяет имя блока описания дополнительного меню. В
отличие от блока описания основного меню, имеющего имя [MENU],
дополнительное меню должно иметь другое имя. Длинна имени блока
дополнительного меню не должна превышать 70 символов. Имя блока не должно
содержать символа слэша (\), обратного слэша (/), двоеточия, точки с запятой,
символа равенства и квадратных скобок.
Необязательный параметр menu_text определяет текст, соответствующий новому
элементу меню. Если вы не укажете параметр menu_text, то в новом элементе меню
будет выведено имя блока описания дополнительного меню, заданное первым
параметром команды SUBMENU.
Пример использования новых команд
Предположим, что на компьютере IBM PC\AT 386 работают три человека. Первый
работает в операционной системе Microsoft Windows и пользуется текстовым
процессором Microsoft Word. Второй предпочитает использовать для
редактирования документов текстовый редактор Лексикон. Третий не работает ни с
Microsoft Windows ни с Лексиконом.
В MS-DOS версии 5.0 каждый из этих пользователей должен был хранить свои
версии файлов конфигурации компьютера - CONFIG.SYS и AUTOEXEC.BAT и
постоянно их переименовывать.
Операционная система MS-DOS версии 6.0 дополнена новыми командами
(описанными выше), предназначенными для организации меню выбора
конфигурации на этапе интерпретации файла CONFIG.SYS.
Приведем пример файла CONFIG.SYS, который может быть установлен на данном
компьютере:

[Menu]
menuitem=Windows, Конфигурация для Windows
menuitem=Lexicon, Конфигурация для Лексикона
menuitem=Standart, Стандартная конфигурация

Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
[Common]
device=c:\dos\himem.sys
dos=high
buffers=15

[Windows]
device=c:dos\emm386 NOEMS
dos=high,umb
devicehigh=c:\dos\SMARTDRV.EXE 2048 1024

[Lexicon]
device=c:\dos\SMARTDRV.EXE 2048
device=c:\dos\setver.sys

[Standart]
device=c:dos\emm386 NOEMS
dos=high,umb
devicehigh=c:\dos\SMARTDRV.EXE 2048
devicehigh=c:\dos\setver.sys

[Common]
files=40

Данный файл CONFIG.SYS содержит описание трех различных конфигураций -


конфигурации для работы в среде операцоннной системы Windows, конфигурации
для работы с текстовым процессором Лексикон и конфигурации для работы в
операцонной системе MS-DOS.
Для всех трех конфигураций исполняются команды, находящиеся в блоке
[Common]. Там расположены две команды: DEVICE=C:\DOS\HIMEM.SYS и

Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
DOS=HIGH. Эти команды загружают менеджер расширенной памяти HIMEM.SYS, и
разрешают MS-DOS использовать область старшей памяти (HMA).
После выполнения этих двух команд на экране появляется основное меню,
определенное в блоке [Menu]:

_  Конфигурация для Windows


   Конфигурация для Лексикона
   Стандартная конфигурация

Когда вы выберете конфигурацию, которую желаете загрузить, нажмите клавишу


<Enter>. После этого будут выполнены команды из соответствующего выбранному
элементу меню блока - [Windows], [Lexicon] или [Standart].
В заключение выполняется команда files=40, расположенная в последнем блоке
[Common]. На этом интерпретация файла CONFIG.SYS заканчивается и MS-DOS
начинает выполнять командный файл AUTOEXEC.BAT.
При необходимости вы можете выполнить ветвление внутри файла AUTOEXEC.BAT,
основываясь на выбранной в меню файла CONFIG.SYS конфигурации. Для этого
предназначена специальная переменная окружения CONFIG. При выполнении
команд файла CONFIG.SYS, переменной CONFIG присваивается имя блока
выбранной конфигурации.
В командном файле AUTOEXEC.BAT вы можете проверять значение переменной
CONFIG и в зависимости от ее значения выполнять различные команды. Для
проверки состояния переменной окружения CONFIG можно воспользоваться
командами <GOTO> и <IF>.
Рассмотрим в качестве примера AUTOEXEC.BAT для предыдущего примера.

set temp=c:\temp

c:\dos\mode >nul CON CP PREP=((866) c:\dos\ega.cpi)

Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
c:\dos\mode >nul CON CP SEL=866

loadhigh c:\ut\swakeyb.com

rem !!! Преходим к метке, соответствующей значению


rem !!! переменной окружения CONFIG

goto %config%

:Windows

path c:\win;c:\dos;e:\nc;c:\ut;d:\nu7;e:\bc\bin;d:\winword;

loadhigh c:\win\SMARTDRV.EXE 2048 1024


loadhigh c:\win\mouse.com
win

goto end_

:Lexicon

path c:\lex;c:\dos;e:\nc;c:\ut;d:\nu7;e:\bc\bin;

c:\dos\SMARTDRV.EXE 2048
c:\mouse\mouse.com

lex
goto end

:Standart

path c:\dos;e:\nc;c:\ut;d:\nu7;e:\bc\bin;

Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
loadhigh c:\dos\SMARTDRV.EXE 2048
loadhigh c:\mouse\mouse.com

nc

goto end

:end

Когда MS-DOS начинает выполнять команды из файла AUTOEXEC.BAT, сначала


происходит установка переменной окружения TEMP, затем загружаются шрифты,
содержащие символы кириллицы.
Затем, по команде GOTO %CONFIG%, управление передается на метку,
соответствующую имени выбранного блока конфигурации. Имена блоков
конфигурации перечислены в блоке описания меню в файле CONFIG.SYS.
Таким образом, в зависимости от того, какая конфигурация будет выбрана в меню,
управление перейдет на одну из трех меток - Windows, Lexicon или Standart. При
этом для каждой конфигурации выполняются только свои команды. После
выполнения команд, следующих за метками, управление переходит на метку END и
исполнение командного файла AUTOEXEC.BAT завершается.
Например, если при интерпретации файла CONFIG.SYS, вы выбрали элемент
основного меню с надписью "Конфигурация для Windows", то переменная
окружения CONFIG принимает значение Windows и управление перейдет на метку
:Windows.
Здесь происходит установка переменной окружения PATH, загружается драйвер
дискового кеша и драйвер мыши. Затем происходит загрузка операционной
системы Windows.

Создание интернет-магазинов: © Александр Фролов, Григорий Фролов,


Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD
http://www.shop2you.ru/ 1991-2016

Рейтинг@M

Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD