|
Завершение работы программы
|
|||
---|---|---|---|
#18+
При завершении работы программы процесс vpf9.exe остаётся, пробовал quit, не помогло вот текст основной программы Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79.
... |
|||
:
Нравится:
Не нравится:
|
|||
03.12.2010, 21:47 |
|
Завершение работы программы
|
|||
---|---|---|---|
#18+
Как программа завершается? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2010, 00:12 |
|
Завершение работы программы
|
|||
---|---|---|---|
#18+
Cipis, сталкивался когда-то с такой траблой, полагаю приложение строишь не на основе главного окна фокса, тогда: в основной форме выставляешь св-во ShowWindow=2, в Unload Clear events , в главном модуле: Clear events Close All Clear All Release All Extended QUIT надеюсь, поможет ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2010, 05:12 |
|
Завершение работы программы
|
|||
---|---|---|---|
#18+
Программа завершается строкой thisform.release в Top-level форме Нет, не помогло, после завешения появляется окно foxpro, которое так же нельзя закрыть обычным способом ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2010, 07:31 |
|
Завершение работы программы
|
|||
---|---|---|---|
#18+
проблема решилась созданием 2-х процедур и их последовательным вызовом после release формы в коде основной программы. Код процедур приведен ниже Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23.
... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2010, 08:23 |
|
Завершение работы программы
|
|||
---|---|---|---|
#18+
Cipis, еще вариант: в главном модуле пишем: ON SHUTDOWN DO MyExitProcedure содержание процедуры стандартное: CLEAR EVENTS CLEAR ALL RELEASE ALL EXTENDED QUIT использую у себя такое решение - проблем не наблюдал ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2010, 08:58 |
|
Завершение работы программы
|
|||
---|---|---|---|
#18+
Чтобы объяснить, что происходит, выделю ключевое место в Вашем коде Код: plaintext 1. 2. 3. 4.
Очевидно, Вы работаете с формой As Top-Level, которая "по определению" не может быть модальной. Следовательно, сценарий следующий. 1) Запускается форма 2) Поскольку форма НЕ модальная, то после запуска кода продолжается исполнение кода программы и выполняется команда READ EVENTS Все! На этом, выполнение программного кода останавливается и FoxPro ожидает событий, инициированных пользователем. Т.е. настройка ON SHUTDOWN - не выполняется. До нее просто не доходит дело. Что произойдет, если просто закрыть форму командой ThisForm.Release()? Ну, форма закроется. И на этом все. Но ведь действие команды READ EVENTS не было отменено. Поэтому, приложение FoxPro, во-первых, так и останется "висеть" в памяти, а поскольку до настройки ON SHUTDOWN дело вообще не дошло, то, во-вторых, у Вас будут проблемы при попытке выгрузить приложение из памяти, например, через диспетчер программ. Процесс можно будет только "убить", но не завершить. Что надо сделать? 1. Перенести настройку ON SHUTDOWN "выше" по коду ДО команды READ EVENTS 2. В методе закрытия формы после команды ThisForm.Release() дать команду CLEAR EVENTS Что произойдет после команды CLEAR EVENTS? Управление будет передано в основную программу на команду, непосредственно следующую за командой READ EVENTS. И произойдет штатное закрытие приложения. Да, еще следует иметь в виду, что настройка On Shutdown срабатывает не только при попытке закрыть приложение из диспетчера программ, но и по команде QUIT. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2010, 20:50 |
|
Завершение работы программы
|
|||
---|---|---|---|
#18+
Спасибо за разъяснение ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2010, 20:52 |
|
|
start [/forum/topic.php?fid=41&fpage=84&tid=1584744]: |
0ms |
get settings: |
11ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
40ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
59ms |
get tp. blocked users: |
1ms |
others: | 304ms |
total: | 444ms |
0 / 0 |