powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Почему программы из проекта выпадают?!
9 сообщений из 9, страница 1 из 1
Почему программы из проекта выпадают?!
    #32878077
CSD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Заранее благодарю за ответ ...

Суть: есть папка, в которой куча (около 700) prg програм. Exe-модуль собирается опять же одной из программ, следующими коммандами:

BUILD PROJECT ... FROM ...
.....
BUILD EXE ... FROM ...

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

Почему так?!
...
Рейтинг: 0 / 0
Почему программы из проекта выпадают?!
    #32878090
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
При такой автоматической сброке внутрь проекта попадают только те файлы, на которые есть явные ссылки. Что-то вроде:

Код: plaintext
DO MyProg.prg

Однако если вызов организован примерно так:

Код: plaintext
1.
VarProg = "MyProg.prg"
DO &VarProg

То в этом случае такая програма НЕ попадет внутрь проекта. Ее надо добавить руками.

При этом, "сборщик" не обращает внимания на фиктивные куски кода. Например:

Код: plaintext
1.
2.
IF .F.
	DO MyProg.prg
ENDIF
Т.е. ясно, что этот файл вообще никогда не выполняется, однако "сборщик" об этом не знает и включает его внутрь проекта.
...
Рейтинг: 0 / 0
Почему программы из проекта выпадают?!
    #32878143
CSD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВладимирМПри такой автоматической сброке внутрь проекта попадают только те файлы, на которые есть явные ссылки. Что-то вроде:

Код: plaintext
DO MyProg.prg

Однако если вызов организован примерно так:

Код: plaintext
1.
VarProg = "MyProg.prg"
DO &VarProg

То в этом случае такая програма НЕ попадет внутрь проекта. Ее надо добавить руками.

При этом, "сборщик" не обращает внимания на фиктивные куски кода. Например:

Код: plaintext
1.
2.
IF .F.
	DO MyProg.prg
ENDIF
Т.е. ясно, что этот файл вообще никогда не выполняется, однако "сборщик" об этом не знает и включает его внутрь проекта.

Точно известно, что DO &VarProg не используется, потому что по смыслу понятно - такие программы в сборку не попадают. Но проблема осталась ...
...
Рейтинг: 0 / 0
Почему программы из проекта выпадают?!
    #32878217
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Приведи пример, как организован вызов проблемных файлов. Тех, что не попали, хотя должны были и наоборот.
...
Рейтинг: 0 / 0
Почему программы из проекта выпадают?!
    #32878245
-ноль-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Проблема ? Хм.... Не вижу я проблемы. Берется PRG в нем описываются SET PROC TO... всем ваших РRG. Понимаю, что 700 PRG описать затратит всего часа 3(это с перекуром и перерывом на обед). И все же после этого Вы получите результат: хоть макроподстановки после этого, хоть явный вызов, все обо всем буду уже знать и проблем с вызовом у Вас не будет. Соответсвенно этот файл нужно "дергать" при загрузке вашего приложения после объявления путей к этим файлам.
...
Рейтинг: 0 / 0
Почему программы из проекта выпадают?!
    #32878353
Aries
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А почему нельзя использовать файл проекта для этих целей?

Истина где-то там...
...
Рейтинг: 0 / 0
Почему программы из проекта выпадают?!
    #32912747
Yura .
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нет, прописать пару тысяч PRG файлов в список требуется не более минуты.
В этом сильно помогает ДОС команда DIR > LIST.PRG. Далее в Фаре очень быстро и независимо от количества вырезается лишнее и вставляется три знака "DO " перед каждым именем файла. После этого достаточно в головной программе написать:
IF .F.
DO LIST.PRG
ENDIF
в любом месте или просто
DO LIST.PRG
после любой из имеющихся команд RETURN, QUIT и т.п.

Я постоянно использую этот прием и еще не разу он меня не подвел.
Более того, как показала моя практика, через некоторое время любой проект начинает сильно засоряться уже не используемым мусором, поэтому процедуру перегенерации своих проектов я выполняю достаточно регулярно.
...
Рейтинг: 0 / 0
Почему программы из проекта выпадают?!
    #32912760
Ilhom_uz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Yura .Нет, прописать пару тысяч PRG файлов в список требуется не более минуты.
В этом сильно помогает ДОС команда DIR > LIST.PRG. Далее в Фаре очень быстро и независимо от количества вырезается лишнее и вставляется три знака "DO " перед каждым именем файла. После этого достаточно в головной программе написать:
IF .F.
DO LIST.PRG
ENDIF
в любом месте или просто
DO LIST.PRG
после любой из имеющихся команд RETURN, QUIT и т.п.

Я постоянно использую этот прием и еще не разу он меня не подвел.
Более того, как показала моя практика, через некоторое время любой проект начинает сильно засоряться уже не используемым мусором, поэтому процедуру перегенерации своих проектов я выполняю достаточно регулярно.

Можно просто написать prg, где список собирается через adir()
и формируется файл LIST.PRG. будет еще быстрее (DO проставлять не надо)
...
Рейтинг: 0 / 0
Почему программы из проекта выпадают?!
    #32912811
XAndy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: plaintext
1.
2.
IF .F.
   DO MyProg.prg
ENDIF


:) Вообще-то для этой цели в фоксе есть специальная команда
Код: plaintext
external procedure myprog.prg
и не нужно загрязнять код фиктивными условиями и вызовами. Ну это так, к слову...

2CSD
Откажись от команд Build в пользу проекта, все равно рано или поздно упрешься в "Line is too long (Error 18)". А при грамотной организации проекта его можно спокойно удалять и создавать заново из пустого, включив только головной файл и перестроив. Для чего, собственно, и служит команда external.

А если так нравится Build, то лучше принудительно удалять все fxp
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Почему программы из проекта выпадают?!
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]