| Здравия желаю всем!
Помогите, кто чем может.. Возникла у меня следующая проблема.
Попросили переделать старую программу (базу данных), написанную в FoxBase+ 2.00, на новый лад.
Чтобы переделать, надо ее запустить и посмотреть, что там творится.
Поставил DOSBox-0.63. Запустил из него FoxBase. В FoxBase запускаю программу под него - файл MENU.PRG. - Вижу, что на экране появляется менюшка, по ней пожно передвигаться с помощью клавиш-стрелочек, ввод, esc, но вместо русских символов - абракадабра.
Кинул в директорию FoxBase файл с keyrus.com и добавил в dosbox.conf :
[autoexec]
# Lines in this section will be run at startup.
mount c c:\foxbase
c:
keyrus.com
MFOXPLUS.EXE
Запустился FoxBase, из него запустил программу - .do menu. Вместо абракадабры стал виден русский текст менюшки:
Работа с файлами Формирование отчетов Работа в среде dBase Доступ к файлам БД и их обработка Выход
Но! Теперь по этой менюшке я вообще никак не могу передвигаться! Ни ввод, ни эскейп, ни стрелочки, ни буквы, ни цифры - как будто клавиатура вообще отключена. Могу только нажать крестик в правом верхнем углу DOSBox и все закрыть. :(
В тексте MENU.PRG пока еще сильно не разбирался. Но после вывода меню идет такой кусок:
do clear_scr
@2,1 say &nt
k=0
set escape off
do while k=0
k=inkey() && вычисление кода клавиши
enddo
do case && aнализ ситуаций
case n=67.and.k=13 && ввод и курсор в конечной позиции
exit
case k=19 && код "влево"
if n=1
n=67
else
n=n-22
endif
case k=4 && код "вправо"
if n=67
n=1
else
n=n+22
endif
case n=1.and.k=13 && переход в меню файлов
do menu12
case n=23.and.k=13
do menu22 && переход в меню отчетов
case n=45.and.k=13.and.level=0.or.k=27 && переход в режим команд DBASE-III
set escape on
clear
set color to bg/n,,,
@12,18 say "Переход в режим интерпретации команд"
@14,10 say "Для перехода в режим команд нажмите любую клавишу."
@16,10 say "Для отмены перехода в режим команд нажмите клавишу ESC."
@18,10 say "Для возврата из режима команд нажмите функциональную "+;
"клавишу F7."
on escape loop
wait
on escape
set talk on
set status on
set scoreboard on
set function 7 to 'clear;RESUME ;'
suspend
set function 7 to 'display memory;'
set escape off
set talk off
set status off
set scoreboard off
set color to rb/n,,,
* case k=27 && код ESC
* exit
endcase && конец анализа ситуаций
enddo
&& работа закончена
set escape on && восстановление и окончание работы
on escape
clear
close all && закрытие всех файлов
set color to w/n,n/w,n,n
quit
У меня ноут и Виста. Думаю, может кодировки символов (номера) как-то начинают не совпадать после подключения keyrus.com, уже пробовал и из разных источников этот keyrus.com ставил - не помогает.. Но прога старая, вроде, работала под вин98 нормально, без глюков..
Помогите решить проблему, пожалуйста, кто в теме! :) | |