Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
05.10.2009, 21:29
|
|||
---|---|---|---|
|
|||
Запуск приложения |
|||
#18+
Всем привет), друзья подскажите, есть проблем ка - я запускаю из проги 1С 7-ку монопольно в конфигураторе с целью про индексировать и закрыть! Проблема в следующим: как заставить прогу на фоксе ждать пока 1с закроется а не проскакивать пока индексируеться 1с? Не судите строго я просто новичок! ... |
|||
:
Нравится:
Не нравится:
|
|||
|
05.10.2009, 22:02
|
|||
---|---|---|---|
Запуск приложения |
|||
#18+
rbvВсем привет), друзья подскажите, есть проблем ка - я запускаю из проги 1С 7-ку монопольно в конфигураторе с целью про индексировать и закрыть! Проблема в следующим: как заставить прогу на фоксе ждать пока 1с закроется а не проскакивать пока индексируеться 1с? Не судите строго я просто новичок! Каким именно образом запускается 1С из фокса (RUN, ShellExecute...) ? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
06.10.2009, 09:07
|
|||
---|---|---|---|
|
|||
Запуск приложения |
|||
#18+
Извините забыл сказать запускаю через RUN ... |
|||
:
Нравится:
Не нравится:
|
|||
|
06.10.2009, 09:42
|
|||
---|---|---|---|
Запуск приложения |
|||
#18+
rbvИзвините забыл сказать запускаю через RUN RUN как раз ждет завершения запущенного приложения. Если ключ /N указан, то не ждет. HELP Покажи код запуска 1С-ки ... |
|||
:
Нравится:
Не нравится:
|
|||
|
06.10.2009, 09:45
|
|||
---|---|---|---|
|
|||
Запуск приложения |
|||
#18+
rbvИзвините забыл сказать запускаю через RUN http://forum.foxclub.ru ... |
|||
:
Нравится:
Не нравится:
|
|||
|
06.10.2009, 09:49
|
|||
---|---|---|---|
|
|||
Запуск приложения |
|||
#18+
код запуска: y='"C:\Program Files\1Cv77\BIN\1CV7S.exe" ENTERPRISE /D"D:\1S_KP\KESK\TES_INTA_EE\" /N"Администратор" /P"1221" /M /@"D:\ftp2\w.txt"' RUN &y ... |
|||
:
Нравится:
Не нравится:
|
|||
|
06.10.2009, 10:00
|
|||
---|---|---|---|
|
|||
Запуск приложения |
|||
#18+
Dima TrbvИзвините забыл сказать запускаю через RUN RUN как раз ждет завершения запущенного приложения. Если ключ /N указан, то не ждет. HELP Покажи код запуска 1С-ки Нее... Там фенька, там ntvdm запускает виндовый процесс 1cv7.exe и завершается. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
06.10.2009, 10:24
|
|||
---|---|---|---|
Запуск приложения |
|||
#18+
Kruchinin PahanDima TrbvИзвините забыл сказать запускаю через RUN RUN как раз ждет завершения запущенного приложения. Если ключ /N указан, то не ждет. HELP Покажи код запуска 1С-ки Нее... Там фенька, там ntvdm запускает виндовый процесс 1cv7.exe и завершается. дело в 1cv7.exe ntvdm не причем. Такой код работает с ожиданием: Код: plaintext 1.
Похоже 1cv7.exe себя перезапускает (или что-то еще запускает) и первый экземпляр закрывается (которого ntvdm ждет), а второй молотит. 1С-ки нет под рукой, проверить нечем. Если все так, как я описал, то тут изворачиваться надо по-хитрому. Делать паузу, отлавливать процесс 1cv7.exe и дожидаться его завершения. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
06.10.2009, 11:07
|
|||
---|---|---|---|
Запуск приложения |
|||
#18+
Код: plaintext
... |
|||
:
Нравится:
Не нравится:
|
|||
|
06.10.2009, 11:45
|
|||
---|---|---|---|
|
|||
Запуск приложения |
|||
#18+
Dima T,Спасибо за совет при запуске блокнота прога ждет как ты и говорил, но при запуске 1с ты тоже наверное прав там в процессах дело), если можно поподробнее на тему как отловить процесс 1С. Спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
|
06.10.2009, 13:01
|
|||
---|---|---|---|
Запуск приложения |
|||
#18+
rbvDima T,Спасибо за совет при запуске блокнота прога ждет как ты и говорил, но при запуске 1с ты тоже наверное прав там в процессах дело), если можно поподробнее на тему как отловить процесс 1С. Спасибо! Можно запустить внешнее приложение в отдельном процессе и дожидаться его окончания. Код: 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. 80. 81. 82. 83.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
06.10.2009, 13:03
|
|||
---|---|---|---|
|
|||
Запуск приложения |
|||
#18+
Dima TKruchinin PahanDima TrbvИзвините забыл сказать запускаю через RUN RUN как раз ждет завершения запущенного приложения. Если ключ /N указан, то не ждет. HELP Покажи код запуска 1С-ки Нее... Там фенька, там ntvdm запускает виндовый процесс 1cv7.exe и завершается. дело в 1cv7.exe ntvdm не причем. Такой код работает с ожиданием: Код: plaintext 1.
Похоже 1cv7.exe себя перезапускает (или что-то еще запускает) и первый экземпляр закрывается (которого ntvdm ждет), а второй молотит. 1С-ки нет под рукой, проверить нечем. Если все так, как я описал, то тут изворачиваться надо по-хитрому. Делать паузу, отлавливать процесс 1cv7.exe и дожидаться его завершения. Можно проще сделать - запускать батник, который будет работать через START /WAIT Помоему, такое ухищрение работало. Но могу и ошибаться - надо проверить. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
06.10.2009, 13:25
|
|||
---|---|---|---|
Запуск приложения |
|||
#18+
rbv... если можно поподробнее на тему как отловить процесс 1С. Спасибо! На фоксе такое довольно муторно писать. Возможно есть какие-нибудь готовые компоненты для перебора процессов. У меня есть DLL-ка на Си. Она не совсем то что тебе надо делает. Но можно и ее задействовать. Код: plaintext 1. 2. 3.
Функция IsWorkingPath() - возвращает 1 если хоть один из процессов запущен EXE-шником из заданной папки или подпапок. В твоем случае ее либо править надо, либо сначала проверять что точно ничего не запущено (а то может что-то левое запустили, а она на это сработает и будет висеть ожидание), запускать 1С и ждать завершения периодически проверяя. В архиве DLL и исходники этой функции. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
06.10.2009, 14:13
|
|||
---|---|---|---|
|
|||
Запуск приложения |
|||
#18+
reware, спасибо за код, но показывает ошибку в строке: lcStart = BINTOC(68, "4RS") + REPLICATE(CHR(0), 64) , там что не в порядке с типом аргумента функции.!!! ... |
|||
:
Нравится:
Не нравится:
|
|||
|
06.10.2009, 14:35
|
|||
---|---|---|---|
|
|||
Запуск приложения |
|||
#18+
rbvreware, спасибо за код, но показывает ошибку в строке: lcStart = BINTOC(68, "4RS") + REPLICATE(CHR(0), 64) , там что не в порядке с типом аргумента функции.!!! Похоже, у вас фокс не девятой версии. В более ранних версиях надо писать свою функцию перевода числа в 4-байтное представление. Как-нибудь так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
06.10.2009, 15:15
|
|||
---|---|---|---|
Запуск приложения |
|||
#18+
Вообще, надо было изначально указывать свою версию фокса. По умолчанию предполагается последняя VFP9. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
06.10.2009, 17:17
|
|||
---|---|---|---|
Запуск приложения |
|||
#18+
Тут я исходник класса-обертки над CreateProcess() давал. В простейшем случае использовать так: Код: plaintext 1. 2. 3.
Попробуй, но я почти уверен что результат как у команды RUN будет, т.к. принцип запуска один и тот же. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=41&tablet=1&tid=1585999]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
42ms |
get topic data: |
14ms |
get forum data: |
3ms |
get page messages: |
51ms |
get tp. blocked users: |
2ms |
others: | 321ms |
total: | 464ms |
0 / 0 |