Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / FoxPro, Visual FoxPro Новый топик    Ответить
 как создать exe?  [new]
bagirka
Member

Откуда:
Сообщений: 8
я создала ехe файл но он открывается и тут же закрывается.что делать?
1 дек 07, 18:36    [4990946]     Ответить | Цитировать Сообщить модератору
 Re: как создать exe?  [new]
BMJ
Member

Откуда: Москва
Сообщений: 270
в теле программы должно быть READ events - ожидание события. Либо цикл DO ENDDO с возмосностью прерывания цикла по условию.
1 дек 07, 18:45    [4990957]     Ответить | Цитировать Сообщить модератору
 Re: как создать exe?  [new]
bagirka
Member

Откуда:
Сообщений: 8
куда имено это записать?
1 дек 07, 18:48    [4990964]     Ответить | Цитировать Сообщить модератору
 Re: как создать exe?  [new]
BMJ
Member

Откуда: Москва
Сообщений: 270
Не претендую на истинность, делаю так: в главной программе пишу после всяких установок и прочего
do while PriznakRaboty=.t.
ACTIVATE MENU -mainmenu
ENDDU
close databases
release all
clear
в пункте меню выход или по кнопке на главной (фоновой форме) присваиваю PriznakRaboty=.F.

Может и не лучший путь, зато работает.
1 дек 07, 19:00    [4990980]     Ответить | Цитировать Сообщить модератору
 Re: как создать exe?  [new]
bagirka
Member

Откуда:
Сообщений: 8
или у меня руки не ровные или чё то тут не так.мелькнуло и пропало
1 дек 07, 19:33    [4991024]     Ответить | Цитировать Сообщить модератору
 Re: как создать exe?  [new]
BMJ
Member

Откуда: Москва
Сообщений: 270
Если сделали по моему принципу, попробуйте вставить перед ENDDO READ EVENTS (программа будет ждать какого-либо события.
1 дек 07, 19:38    [4991028]     Ответить | Цитировать Сообщить модератору
 Re: как создать exe?  [new]
ВладимирМ
Member

Откуда: г. Москва
Сообщений: 7864
BMJ
Если сделали по моему принципу, попробуйте вставить перед ENDDO READ EVENTS (программа будет ждать какого-либо события.

Это один из худших вариантов, который только можно придумать. Посмотрите загрузку процессора при работе Вашего приложения. Цикл DO WHILE забирает на себя практически все ресурсы процессора.

А по поводу вопроса смотрите здесь

Окно FoxPro мелькает на экране и тут же закрывается

Более подробно все это описано здесь

Главный (стартовый) файл проекта
1 дек 07, 20:14    [4991068]     Ответить | Цитировать Сообщить модератору
 Re: как создать exe?  [new]
FoxKiller
Guest
BMJ
Не претендую на истинность, делаю так: в главной программе пишу после всяких установок и прочего
do while PriznakRaboty=.t.
ACTIVATE MENU -mainmenu
ENDDU
close databases
release all
clear
в пункте меню выход или по кнопке на главной (фоновой форме) присваиваю PriznakRaboty=.F.

Может и не лучший путь, зато работает.


теперь понятно почему половина фоксовых програм работает через жопу!
уважаемый, этот подход был нормальным на однозадачных операционках. в винде кроме вашей хрени имеют право работать и другие программы! нефиг проц грузить на 100%

P.S. на фоксе не писал 3,5 года, но никогда такой хрени не делал (кроме как на fpd)
1 дек 07, 20:38    [4991093]     Ответить | Цитировать Сообщить модератору
 Re: как создать exe?  [new]
BMJ
Member

Откуда: Москва
Сообщений: 270
Насчет загрузки процессора только что проверил, делов то убрать цикл перевызва меню- две * в программе. Загрузка при наличии ДО и енддо одинакова что и без них все равно стоял READ events и программа была в ожидании. Однако, все равно спасибо за наставление.
1 дек 07, 20:46    [4991104]     Ответить | Цитировать Сообщить модератору
 Re: как создать exe?  [new]
Sergoj
Member

Откуда: Подольск
Сообщений: 32
Если правильно понял:
Попробуй в текст основной программы после запуска форма записать

DO FORM form_main
READ EVENTS
_SCREEN.VISIBLE = .T.

Кстати к exe-шнику и dll- шки нужны
6 дек 07, 17:50    [5014850]     Ответить | Цитировать Сообщить модератору
 Re: как создать exe?  [new]
Bl@ze¶ox
Member

Откуда:
Сообщений: 34
Если приложение не использует VFP main window:

в стартовой проге:

do form frmMain.scx

в форме frmmain
.activate()
{
if !this.initialized
read events
this.initialized=.T.
endif
}
.queryunload()
{
clear events
}
7 дек 07, 12:48    [5017751]     Ответить | Цитировать Сообщить модератору
Все форумы / FoxPro, Visual FoxPro Ответить