Ru-Board.club
← Вернуться в раздел «Прикладное программирование»

» WinXP + Dos прога на FOXPRO

Автор: Meydzin
Дата сообщения: 28.04.2005 09:44
Может немного и не в эту тему - но мне кажется спецы по Fox'у
лучше поймут суть проблемы:

Есть прога написаная на FoxPro под доску версию к сожалению не знаю
стояла на компе с WIN2000 торкнуло у нас нач по производству перенести ее еще на один комп с WINXP
вроде и в Autoexec.nt и везде прописал
и перенес все в теже каталоги с теми же путями
но не запускается и все тут
пишет надпись : Cannot locate the desired version of FoxPro

Автор: OdesitVadim
Дата сообщения: 28.04.2005 13:12
Meydzin
Можно попробывать включить режим совместимости.
З.Ы, Это вообщето нужно перенести в раздел Программы или Операционные системы.
Автор: ShIvADeSt
Дата сообщения: 29.04.2005 01:02
Meydzin
Попробуй создать бат файл наподобие вот такого

Цитата:

@echo on
set Prog=f:\db\apP\main.app
if not exist %Prog% goto nofile
c:
cd \arm
if exist fuck.mem del fuck.mem
if exist c:\fp25\foxprox.exe SET disk=c:\fp25\foxprox.exe
;if exist d:\fp25\foxprox.exe SET disk=d:\fp25\foxprox.exe
copy %Prog%
%disk% -t main.app -cC:\arm\config.fp
goto end
:nofile
@echo on

и прописать правильные пути к фоксу. Так как если не ошибаюсь без фокса эти проги не работают.
Автор: Meydzin
Дата сообщения: 29.04.2005 07:59
ShIvADeSt



Цитата:
set Prog=f:\db\apP\main.app
if not exist %Prog% goto nofile
c:
cd \arm



Цитата:
copy %Prog%
%disk% -t main.app -cC:\arm\config.fp
goto end
:nofile


вот эти две фразы обьясни пожалуйста поточнее


Цитата:
и прописать правильные пути к фоксу.


вроде прописал нормально - в autoexec.nt
точно скопировать не могу - вроде выглядело так:

path c:\fpd26\ итп
Автор: ShIvADeSt
Дата сообщения: 29.04.2005 08:11
Meydzin

Цитата:
вот эти две фразы обьясни пожалуйста поточнее

Не я составлял этот батник
Это не в autoexec надо писать а делать запускной файл для проги, но у вас походу по другому.
Автор: Meydzin
Дата сообщения: 29.04.2005 11:19
ShIvADeSt
ТТам exe шник скомпилен - могу кстати саму прогу прислать - мож разберешься?
Автор: vladk1973
Дата сообщения: 03.05.2005 06:59
Проблема, очевидно в невозможности запуска версии FoxPro RunTime
Это бывает, если фоксу не хватает памяти для загрузки модуля foxdx260.esl
1) Попробуйте поиграться с настройками ярлычка, а именно с настройками памяти.
2) Запускается ли программа из батничка ? Если да, то Win выделяет место только под запуск этого батничка, соответственно имеем проблему, описанную выше


Цитата:
Там exe шник скомпилен

А сам то Foxpro установлен ?
3) Можно программу просто запустить из под самого фокса например так:
C:\FOXPRO\FOXPROX.EXE путь\моя_программа_на_фоксе.exe
Автор: stary_fox
Дата сообщения: 03.05.2005 09:15
Мы иногда запускаем старые фоксовские программы из под Norton Commander (не из-под Far и подобных!). Попробуй!
Только в config.sys надо прописать, что
files=255

Автор: Meydzin
Дата сообщения: 03.05.2005 09:20
Все - решил вопрос:

в общем поиграл с настройками ярлыка
полностью прописал путь к фоксу, самой проге и ini фалу
оказывается вся загвоздка была именно в ini.
Автор: kazavo4ka
Дата сообщения: 20.09.2006 06:56
Народ помогите пожалуйста!
Был комп с win98, на нем стояла программа "АРМ Зарплата", которая запускалась видимо через FoxPro 2.6, переустановил винду на win xp, в режиме совместимости программа не запускается, когда запускаю программу через foxpro с ключом (ну т.е. C:\foxpro\foxpro.exe e:\zpb\zpb.exe) то появляется синее окошко где написано "Работа АРМ Зарплата невозможна" и все гаснет... Подскажите пожалуйста что это может быть, только если можно доступным языком, я во всех этих foxpro вообще не разбираюс...
Автор: Kokoc
Дата сообщения: 20.09.2006 14:29
Дат тут уже все описано.
1) Дописать к PATH (в свойствах компьютера) путь к каталогу, куда установлен FOX (т.е. где сидят файлы foxpro.exe, fox*.esl, fox*.eso)
2) Установить в \windows\system32\config.nt параметр FILES=120
Автор: earlzero
Дата сообщения: 20.09.2006 17:05
Еще вариант - пускать через эмулятор. Например, у меня Arity Prolog на winxp x64 работает только из dosbox(http://dosbox.sourceforge.net/)
Автор: kazavo4ka
Дата сообщения: 21.09.2006 07:00

Цитата:
Дописать к PATH (в свойствах компьютера) путь к каталогу, куда установлен FOX (т.е. где сидят файлы foxpro.exe, fox*.esl, fox*.eso)

Извиняюсь за свою тупость, но чот я не понял Можно поподробнее ?
Автор: kazavo4ka
Дата сообщения: 21.09.2006 09:51
И еще что надо прописать в autoexec.nt?
Автор: vladk1973
Дата сообщения: 21.09.2006 10:38
kazavo4ka
Можно попробовать просто скопировать foxpro.exe в папочку с программой e:\zpb\zpb.exe
и запустить прямо в этой папочке
e:\zpb\foxpro.exe zpb.exe
P.S. Проблема, очевидно, не в фоксе, а в инициализации программы
P.P.S. Кстати, лучше использовать расширенную версию фокса, а именно файилк foxprox.exe
Автор: Kokoc
Дата сообщения: 22.09.2006 14:11
kazavo4ka
Правой мышью на "Мой компьютер" - Свойства - Дополнительно - переменные среды.
В нижнем окошке ищем "Path", щелкаем на нем, жмем кнопку "Изменить" и дописываем в конец (поле "Значение переменной"):
... ;C:\FOX
(см. как там у тебя каталог называется - C:=\FOX, C:\FPD26, C:\FOXPRO или еще как-то...)
Path также можно прописать в BAT-файле перед непосредственным вызовом fox'а.
Заодно меняем в верхнем окне переменную TEMP на более короткую - если стоит "C:\Document and Settings\xxxxx\Temp", то меняем на более короткое - напр. "C:\TEMP" или "C:\WINDOWS\TEMP".
Или в файле config.fp прописываем "TMPFILES=C:\TEMP"
Естественно, каталог C:\TEMP должен быть, и если NTFS, то должны быть права на запись.

Еще может быть прболема с тем, что DOS'у не хватает памяти для переменных среды (в WinXP/2000 их очень много). Поэтому в свойствах ярлыка программы следует установить размер памяти для среды побольше.
Или написать BAT, в начале которого перечислить переменные среды с присвением пустых значений или сократив существующие - например, можно Path сделать покороче, а пеменные с длинными значениями очистить.
Например:

Код:
SET ALLUSERSPROFILE=
SET APPDATA=
SET CLASSPATH=
SET CommonProgramFiles=
Os2LibPath=
Path=C:\WINDOWS;C:\WINDOWS\SYSTEM32;C:\FOX
MYPROGRAM.EXE
Автор: kazavo4ka
Дата сообщения: 25.09.2006 07:30
Огромное всем спасибо! (Особенно Kokoc ). Чтоб я без вас делал? . Уже хотел было отчаяться... . Теперь спокойно посношу везде эти win 98

Вобщем проблема решилась когда я к темпу короткий путь поставил и в переменной path путь к фоксу записал.

P.S. Прога весит 4 с лишним метра, но раз без фокса не хотела запускаться, значит не автономная.

Автор: Ashi
Дата сообщения: 02.02.2007 10:03
Уважаемые! Возможно мне придется заняться подобной галиматьей. Так вот в случае выполнения всех вышеописанных действий. Не будет ли проблем с выводом на печать сведений из базы?.
Автор: dmka
Дата сообщения: 02.02.2007 12:29

Цитата:
Не будет ли проблем с выводом на печать сведений из базы?.

Не беспокойтесь, проблемы обязательно будут!

Насколько я помню, принтер должен быть не gdi и иметь русские шрифты.
Автор: Looking
Дата сообщения: 06.02.2007 07:15
dmka
Цитата:
Не беспокойтесь, проблемы обязательно будут!
Насколько я помню, принтер должен быть не gdi и иметь русские шрифты.

Благодоря o22, это уже не проблема http://forum.ru-board.com/topic.cgi?forum=5&bm=1&topic=9340#1

Есть еще момент с загрузкой проца. Решается использованием
RESFREE.COM _http://foxpopuli.narod.ru/utils.htm или TameDos _http://www.tamedos.com

Еще совет Kokoc по поводу настройки памяти, но с другими цифрами (60% это сейчас слишком много):
В папке программы создать файл config.fp, в нем написать что-то вроде:
memlimit=5,2048,8192
Первый параметр процент от всей RAM, можно давать в районе 8Мб.
Больше все равно использоваться не будет
Второй параметр - min заним. память Кb
Третий параметр - max заним. память Кb

Для двуядерности рекомендуют запускать через http://www.ice-graphics.com/ICEAffinity/ICEAffinity.exe
Автор: Chvlva
Дата сообщения: 19.05.2009 12:33
Есть такая проблемма.

Есть программа на фоксе 2.6 (дос-версия) в виде маленького exe-шника (исходников нет)
Под Win-98 запускается и работает без проблем.
Перенесли под Win XP.
Запускается без проблем, но
после работы где-то минуту-две (когда как) зависает на 5 минут. Потом просыпается и дальше уже работает без проблем до выхода из нее. При следующем запуске опять та же картина, и так каждый раз.
FoxPro на машине есть, путь к нему прописан.
Files указали достаточно.
Запускать через foxprox пробовали - проблемма осталась.

Помогите советом, пожалуйста.

Спасибо.
Автор: dmka
Дата сообщения: 19.05.2009 16:27
Посмотри Process Monitor-ом, может будет понятно что прога делает эти 5 мин.

Process Monitor
http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx
Автор: Chvlva
Дата сообщения: 20.05.2009 09:59

Цитата:
Посмотри Process Monitor-ом, может будет понятно что прога делает эти 5 мин.

Process Monitor
http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx


Смотрел.
Просто висит.
К файлам обращений в это время нету, к реестру, понятно, тоже.
Процессор не загружает.
То есть, никакой видимой активности.
Причем, происходит это независимо от того, где и что ты делаешь в программе в это время (находишься в экранной форме, просматриваешь подготовленный отчет, ...).
Коды нажатых клавиш сохраняются в буфере, и после просыпания программа выполняет, что ты успел понажимать.
Автор: d0r0fey
Дата сообщения: 20.05.2009 10:10
у нас такое было в самом начале, когда программа пыталась обратиться к принтеру. Устройство(lpt1) было не готово и программа думала, возможно и ваша куда-нибудь тыкается, а этого нет.
Проблема решилась просто - принтер настроили на тот порт к которому она обращалась

Автор: Chvlva
Дата сообщения: 20.05.2009 12:58
Попадание в десятку.
Принтер USB-шный, вот отсюда и проблемка.
Установили принтер на lpt1 - проблемма исчезла.
Кстати, засекли посылочку на принтер длиной 5 байт, наверное опрос состояния.

Спасибо за помощь.

Страницы: 1

Предыдущая тема: Handle по имени процесса


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.