5.1.11. Int 2Eh - Выполнить команду ДОС

 

      Вход: DS:SI указывает на строку, содержащую команду ДОС.

 

      Выход: Неопределен.

 

      Это  НЕДОКУМЕНТИРОВАННОЕ прерывание  выполняет заданную ему

 команду ДОС так же, как если бы она была введена с клавиатуры.

 

      Перед вызовом Int 2Eh Вы должны поместить в DS:SI указатель

 на  строку,  содержащую  команду  ДОС.  Строка должна начинаться

 байтом,  содержащим  длину  команды,  и  оканчиваться байтом 0Dh

 (BK), который не включается в длину строки. Пример:

 

      db  15,'Set PROMPT=$p$g',0Dh  ; длина строки=15 байтов

 

      Этот   пример  иллюстрирует   основное  применение  данного

 прерывания  -  оно  позволяет  модифицировать корневой системный

 контекст  с  помощью  команды  SET.  Во  всех  остальных случаях

 следует  пользоваться полностью  документированной функцией 4Bh,

 запуская  вторую   копию  COMMAND.COM  и   передавая  ей  строку

 аргументов вида "/c команда-ДОС".

 

      Примечания:

 

      1. Перед обращением к Int 2Eh уменьшите до минимума память,

 занятую   программой,  с   помощью  фн   4Ah.  Отведите  большое

 пространство под стек, т. к. ДОС буквально пожирает его.

 

      2. Это  прерывание разрушает SS и  SP. Поэтому сохраните их

 перед вызовом и восстановите сразу после него.

 

      3. Это прерывание не  используется ни одной программой ДОС,

 включая  COMMAND.COM.  Поэтому  лучше  всего  не пользоваться им

 вообще!

 

      См. также: Системный контекст

                 Запуск и завершение программ

                 Фн 4Bh.

Вы находитесь в разделе: 
Также вам будет интересно:

Добавить коментарий