|
Process input/output
|
|||
---|---|---|---|
#18+
Добрый день. Необходимо запустить процесс с выводом и вводом данных. Есть бат файл который формирует вспомогательные файлы для запуска exe файла. И потом в данном bat файле запускает exe файл(стороннее приложение) с параметрами сформированных файлов. Exe файл выполняет компиляцию данных с выводом в консоль определенных данных. Я перехватываю вывод этих данных и вывожу у себя в приложении. Но бывают случаи когда компиляция в exe прекращается по ошибке (не находит устройство) и выводит сообщение о с просьбой прекратить или попробывать еще раз найти данное устройство. Так вот почемуто в мое приложение не до конца попадает сообщение и я никак не могу понять как мне перехватить ввод. Если бат файл запусти cmd то получаю корретное сообщение и запрос на ввод Код: c# 1. 2. 3. 4.
А у меня процесс подвисает в таком состоянии Код: c# 1. 2. 3.
т.е. не выводит последнюю строку с запросом. Вот мой код. Что я не так делаю ? Код: c# 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. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113.
В общем мне нужно как-то получать интерактивный вывод и при необнодимости ввода данных произвести данный ввод. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.06.2014, 17:19 |
|
Process input/output
|
|||
---|---|---|---|
#18+
haicon В общем мне нужно как-то получать интерактивный вывод и при необнодимости ввода данных произвести данный ввод. Видимо диалоговая строка не закончена, и не выбрасывается в поток.... Если не найдется решения - определяйте об останове по таймауту и последнему полученному сообщению. Оно ведь всегда "Проверьте, запущен ли этот сервер!" ? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.06.2014, 17:58 |
|
Process input/output
|
|||
---|---|---|---|
#18+
D129haiconВ общем мне нужно как-то получать интерактивный вывод и при необнодимости ввода данных произвести данный ввод. Видимо диалоговая строка не закончена, и не выбрасывается в поток.... Если не найдется решения - определяйте об останове по таймауту и последнему полученному сообщению. Оно ведь всегда "Проверьте, запущен ли этот сервер!" ? Посути диологовое сообщение завершено. Т.к. если завершить процесс (сторонней программы), то строка все же выдается. По таймауту тоже думал проэто, но как это не красиво выглядит... ... |
|||
:
Нравится:
Не нравится:
|
|||
09.06.2014, 19:15 |
|
Process input/output
|
|||
---|---|---|---|
#18+
haicon но как это не красиво выглядит... Весь интернет так работает. Чего в этом некрасивого? Если у вас нет никаких активных способов проверить, остановилось приложение или нет - то время ожидания, полученное опытным путем, вполне способ. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.06.2014, 09:56 |
|
|
start [/forum/topic.php?fid=20&msg=38665949&tid=1402831]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
35ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
others: | 314ms |
total: | 438ms |
0 / 0 |