Библиотека разработок

Документооборот 76
Наука/образование 30
Бухгалтерский учет. Финансы 63
Обработка и хранение данных 49
Решения для бизнеса 65
Игры и развлечения, анализ и тестирование 5
Домашние дела 10
Культура, спорт, здоровье 6
Инструменты для разработчика 48

Конкурс

Правила участия
Победители
Тестовая лаборатория

Разработчикам

Форум
Статьи
Советы
Руслан Хакимов

Эмулятор MS DOS (DOS Emulator) (VBA, WSH, MS Word)

14.11.06

Картинка исходного размера PC Magazine: It works!

Эмулирует работу операционной системы MS DOS.


Исходный код: не доступен
Способ распространения: shareware


Журнал PC Magazine/REРейтинг разработки: 4

PC Magazine/RE:

Первое впечатление от того, что делается данная программа – это просто забавно! Вы запускаете обычный файл Word, а у вас на экране появляется окно, эмулирующее DOS-режим с почти правдоподобным выводом текстовых надписей. Прямо «живой» MS-DOS - оригинально!

Но теперь давайте задумаемся, зачем это нужно?

Автор разработки предлагает оригинальный способ для демонстрации возможностей применения Windows Scripting Host (WSH). Один из классов в составе WSH позволяет осуществлять команды в файловой системе (как в DOS). Делается это непосредственно из прикладной программы Windows (а не через режим эмуляция DOS средствами cmd.exe). В результате пользователь получает в свое распоряжение режим терминальной работы непосредственно в среде Word.

Опираясь на иллюстрируемый подход, разработчик может создать собственную подсистему команд (как подмножество WSH), оформив их в нужном интерфейсе. Он может предоставить пользователю прикладной системы Office собственную версию терминального режима и целиком контролировать, какие команды тот получает в свое распоряжение.

Теперь несколько слов о недостатках:

1. Поскольку работа ведется в среде Word, то следует учитывать используемые там средства автоматизации, используемые при вводе текста. Например, при нажатие Cntr^2 выполняется ввод парных кавычек, причем курсор автоматически помещается между ними. Если нажать названное клавиатурное сокращение в режиме "эмуляции", то программа, контролирующая текущее положение указателя, более не даст выйти за последние кавычки. Поскольку при обработке строки она используется целиком, присутствующие на конце «неудаляемые» кавычки не позволят более выполнить ни одной «DOS»-команды. Выход из возникшей ситуации: нажать Ctrl^W и завершить текущий сеанс работы Word.

2. При работе с WSH требуется, чтобы адреса программ задавались со своим полным путем доступа. Наоборот, в режиме командного процессора MS-DOS реализована собственная технология подстановки полного пути. Недостающей части строки подставляется (например, из системной переменной PATH). Также местонахождение файлов может разыскиваться по стандартным папкам для просмотра (C:\Windows; C:\Windows\System и т.д.). Если они отыскиваются, то автоматически подставляется имя соответствующей папки. Эту разницу в обработке необходимо учитывать при запуске программ из «эмулятора».

3. Не реализована функция перенаправления выходного потока. Например, в DOS вы можете сохранить результат работы команды DIR в выходном текстовом файле на жестком диске, указав оператор >> имя файла. Здесь эта возможность не поддерживается.

Тем не менее, несмотря на перечисленные недостатки, хочется отметить данную разработку за оригинальность и практическую полезность (например, как прототип для будущих разработок).

Разработка опубликована в следующих разделах:

Познавательные игровые программы

Автоматизация программ Office

Технологические разработки для создания новых систем

Взять квартиру в ипотеку через риэлтор стоит оформлять ипотеку через риэлторов.