Re: вопрос по гриду | |
---|---|
DmitryKn Автор Сообщений: 300 Дата регистрации: 06.04.2022 |
Читает в Setup.ini , а там руками задается но! Setup.ini лежит в другом каталоге, в ярлыке указывается рабочая папка, и он ее находит. Возможно, при запуске из фокса не видит этот файл |
Re: вопрос по гриду | |
---|---|
DmitryKn Автор Сообщений: 300 Дата регистрации: 06.04.2022 |
в общем , такая конструкция:
файл setup.ini лежит в d:\users\username\project\project.app что нужно смотреть этот файл при запуске понимает из ярлыка, где указана рабочая папка. |
Re: вопрос по гриду | |
---|---|
akvvohinc Сообщений: 4224 Откуда: Москва Дата регистрации: 11.11.2008 |
Не понимаю. У вас обращение к Setup.ini уже идет через свойство goApp.cPathWork. Вот где у вас происходит создание объекта и инициализация его свойств. goApp = CREATEOBJECT('APP') Цитата:Вот эту папку, указанную в ярлыке, и надо сделать текущей перед запуском EXE из Фокса. Как - я написал выше. |
Re: вопрос по гриду | |
---|---|
DmitryKn Автор Сообщений: 300 Дата регистрации: 06.04.2022 |
ну я это сразу попробовал, только Арр лежит в другой папке и фокс генерит ошибку file d:\ users\username\project\appgen.vcx (это класс в приложении start, в этом классе Арр ) does not exist
запускаю main.prg если запускать start.exe какие то каракули в новом окне и все |
Re: вопрос по гриду | |
---|---|
akvvohinc Сообщений: 4224 Откуда: Москва Дата регистрации: 11.11.2008 |
Так эта ошибка выдается по делу или нет? На самом деле appgen.vcx лежит в папке d:\ users\username\project\ ? Если эту ошибку вы получаете при запуске исходников, то выше я написал - эта проблема решается перечислением всех нужных путей в настройке PATH или команде SET PATH. Как именно? Что вы сделали, чтобы эта папка стала текущей и проверили ли вы перед запуском, стала ли она текущей. Вы бы описали по шагам более подробно, что вы делаете при запуске start.exe в случае, когда хотите воспользоваться дебаггером. Исправлено 1 раз(а). Последнее : akvvohinc, 20.11.22 21:06 |
Re: вопрос по гриду | |
---|---|
DmitryKn Автор Сообщений: 300 Дата регистрации: 06.04.2022 |
на самом деле он лежит в папке d:\work\start\ где находится start.exe, в этом приложении находится класс APPGEN, где и задаются пути:
класс APPGEN содержит АРР, который я тут и объявляю, а в нем cPathWork считывается из Setup.ini , в котором указано руками. Лежит этот сетап в папке d:\ users\username\project\ и в нем же приложение project.app - то. что я назвал основной модуль. Его открывают пользователи. Такое же приложение project.app лежит в PathSystem = d:\work\projeckt\project.app , его я редактирую и тут же лежит dbc со всеми таблицами. После редактирования и компиляции прри запуске start.exe пользователем , если есть отличия по дате-времени редактирования приложение копируется в d:\ users\username\project\ .. Этот фрагмент я привел выше. Запускать пробовал так: 1.Открываю фокс без проекта, в командном окне set default to ... и тут все эти пути перепробовал. 2.В командном окне DO и путь до main.prg Пробовал для обоих приложений, но во всех случаях возникает ошибка, не находит этот класс. В setup.ini задаются пути pathwork = d:\users\username\project\ - тут лежит project.app, основной модуль, и pathsystem = d:\work\projeckt\ - тут БД и все папки с формами, классами и т.п. В командном окне я задаю только set default to и какой-либо из этих путей, и этого явно не хватает, и никак к концу дня уже не соображу, может куда-то setup.ini просто скопировать.. |
Re: вопрос по гриду | |
---|---|
akvvohinc Сообщений: 4224 Откуда: Москва Дата регистрации: 11.11.2008 |
Цитата:Могу только повторить - если вы запускаете исходники (DO main.prg), то все необходимые пути должны быть предварительно перечислены в PATH или SET PATH (я пишу об этом уже третий, кажется, раз, но вы ни разу никак на это не прореагировали!). Без этого Фокс не найдет ни вашу библиотеку классов (AppGen.vcx), ни MainApp, так как они не лежат в текущей папке, ни другие компоненты (например, UpgrApp и т.п.), которые также не лежат в текущей папке. Найдется лишь то, к чему вы обращаетесь с помощью путей, остальное Фокс не найдёт, пока вы не зададите в PATH путь к папке, где это лежит. К тому, что у вас включено в MainApp, пути прописывать не надо, раз вы вызываете сам APP. При запуске EXE все это находится, так как включено - что-то в проект для EXE, а что-то в проект для APP, и, соответственно, попало или в EXE, или в APP. Цитата:При запуске исходников всё это не поможет - см. выше. -------------- Ладно, раз с исходниками для вас оказалось сложно, то попробуйте завтра с EXE. Выполните аккуратно всё, что я написал ниже, а потом напишите, где "затык", если он произойдет. 1) Запустите Фокс 2) В нужное место программы, входящей в ваш APP, добавьте команду Suspend 3) Далее в командном окне: 4) Установите текущую папку в значение, равное рабочей папке ярлыка, запускающего start.exe: SET DEFAULT TO "<полный путь к папке>"5) Проверьте, что текущая папка стала такой, как нужно: ? SYS(5)+CURDIR()6) Запустите EXE командой DO start.exe (c путем, если EXE не лежит в текущей папке) 7) Если программа запустилась и работает, то через её интерфейс идите туда, где вы поставили Suspend. Если что-то не так (раньше вы писали о каких-то дефектах изображения), то выложите скриншот. 8) Если команда Suspend будет выполнена, программа остановится, вы окажетесь в командном окне Фокса 9) наберите и выполните команду DEBUG - появится дебаггер. |
Re: вопрос по гриду | |
---|---|
Владимир Максимов Сообщений: 14100 Откуда: Москва Дата регистрации: 02.09.2000 |
Чтобы было понятно с отладчиком, следует пояснить, что сама по себе отладка возможна только в среде разработки FoxPro. Debugger - это инструмент разработки. В Run-Time (готовом EXE) запуск отладчика невозможен.
Максимум, что можно получить в Run-Time - это информацию по строке, где произошла ошибка. Да и то, только в случае, если на этапе создания EXE не снимали галку "Debug Info" (пункт меню Project -> Project Info -> Закладка Project -> Debug Info). Эта галка может сильно увеличить размер EXE-файла. Поэтому, как правило, ее не ставят. |
Re: вопрос по гриду | |
---|---|
Каратаев Сообщений: 3977 Откуда: Алматы Дата регистрации: 04.12.2001 |
В этом случае может помочь обработчик ошибок ON ERROR. Желательно писать свой, конечно... ------------------ Никогда не бывает настолько плохо, чтобы не могло быть еще хуже. |
Re: вопрос по гриду | |
---|---|
akvvohinc Сообщений: 4224 Откуда: Москва Дата регистрации: 11.11.2008 |
Цитата:В нашем случае проблема не с EXE, а с вызываемым из него APP, который не входит в EXE, а поэтому отладка возможна. |
Re: вопрос по гриду | |
---|---|
of63 Сообщений: 25256 Откуда: Н.Новгород Дата регистрации: 13.02.2008 |
...Незнаю, вернет ли ASTACKINFO(ArrayName) номер строки (и текст проги) в компиляции без галки Debag... И что мешает скомпилять сначала с галкой, а "на гора" выдавать без галки... |
Re: вопрос по гриду | |
---|---|
of63 Сообщений: 25256 Откуда: Н.Новгород Дата регистрации: 13.02.2008 |
Я из IDE запускаю экзешник (не APP, хотя, какая разница!), и дебагер видит исходник (PJX/PJT и файлы, на которые он указывает). Но видит не всегда. заметил, что: - если запустить фокс и в нем Ctrl-D и произвольный EXE (рядом с которым лежит и проект), то в при исполнении в команде SET STEP ON можно получить "Соурке оут оф ранге", т.е исходник не виден - если скомпилять проект в экзешник, и тут же запустить его Ctrl-D, то на SET STEP ON отладчик видит исходный код! - естественно, компилировать надо с галкой "Debug...", иначе нелогично ) |
Re: вопрос по гриду | |
---|---|
akvvohinc Сообщений: 4224 Откуда: Москва Дата регистрации: 11.11.2008 |
Так не надо править исходник после сборки EXE. А если уж поправил, то пересобери EXE. |
Re: вопрос по гриду | |
---|---|
akvvohinc Сообщений: 4224 Откуда: Москва Дата регистрации: 11.11.2008 |
Не на те слова я обратил внимание - пропустил "Run-Time" мимо ушей. Конечно, для отладки EXE надо запускать из-под Фокса. |
Re: вопрос по гриду | |
---|---|
of63 Сообщений: 25256 Откуда: Н.Новгород Дата регистрации: 13.02.2008 |
() не из-за правки, скорее всего (разрабы фокса отмечают даты файлов, типа, если дата fxp ранее соотв. prg, то они что-то напишут, или прога повесится... это довольно точно. Ну, сам знаешь, когда надо исполнять прогу (псевдокод), да еще отслеживать исходный текст... где-то "накосячили"... Вообще разрабам фокса под винду большой респект, проделана громадная работа... жалко, что не в |
Re: вопрос по гриду | |
---|---|
akvvohinc Сообщений: 4224 Откуда: Москва Дата регистрации: 11.11.2008 |
Цитата:А какая последовательность действий, кроме правки PRG, приводит в этом случае к сообщению: Source is out of date? |
Re: вопрос по гриду | |
---|---|
of63 Сообщений: 25256 Откуда: Н.Новгород Дата регистрации: 13.02.2008 |
Это вопрос к разрабам. Я привел последовательность действий, которая позволяет отлаживать один проект (не два, как у ТС). Как отлажиывать сразу два проекта я не знаю.
|
Re: вопрос по гриду | |
---|---|
akvvohinc Сообщений: 4224 Откуда: Москва Дата регистрации: 11.11.2008 |
Я не про это.
Ты написал, что Source is out of date возникает не из-за правки PRG. Я других вариантов с ходу привести не могу (ручная правка даты/времени PRG не считается). А мне показалось, что ты знаешь и другие способы этого добиться. |
Re: вопрос по гриду | |
---|---|
of63 Сообщений: 25256 Откуда: Н.Новгород Дата регистрации: 13.02.2008 |
Да не знаю! ) Привел способы, которые работают (и неработающие). Я так и сказал изначально - хз, где фокс (разрабы его) ищут текстовые фпйлы с "строкаим" (там строк нет, просто ищут строку в тестовом файле). Вы фокс, разрабов, тоже поймите. Войдите в проблему - вы запускаете в IDE обычны PRG например однострочную - содержащую "хеллоу верд". Посмотрите,
Доб. Вобщем: - флаг "Debag Info" убирать не надо, если вы - не стоит надеяться на совершенный механизм поиска строк кода (файлов проекта, и сам проект pjx/pjt), в фоксе нет механизма, чтобы явно указать на источник (на проект) - если что - пишите вместо точек останова "вайтики" (WAIT TRANS(переменная) WINDO...) некоторым нравится. Все по-разному отлаживают свою лажу ) Исправлено 1 раз(а). Последнее : of63, 21.11.22 22:47 |
Re: вопрос по гриду | |
---|---|
akvvohinc Сообщений: 4224 Откуда: Москва Дата регистрации: 11.11.2008 |
Цитата:Я поставил себя на место процессора и решил искать тексты в файлах PRG. Если не найду, напишу Source not available. |
© 2000-2024 Fox Club  |