|
Запуск другого процесса
|
|||
---|---|---|---|
#18+
Коллеги, нужен совет. Из своего приложения запускаю графический редактор Paint.Net ( или Word): Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19.
Между App.Current.MainWindow.WindowState = WindowState.Minimized; //-- Минимизируем функциональное приложение и startInfo.WindowStyle = ProcessWindowStyle.Normal; "мертвый" экран секунд 8-10. Как показать пользователю, что комп здесь не "висит", а находится в состоянии ожидания? ... |
|||
:
Нравится:
Не нравится:
|
|||
16.12.2019, 15:17 |
|
Запуск другого процесса
|
|||
---|---|---|---|
#18+
ВМоисеев, вместо минимизации - модальное окно без кнопки закрытия и с сообщением - "Загружается paint... Для продолжения работы закройте paint" когда запускаемый процесс загрузится - он закроет собой родительское приложение ... |
|||
:
Нравится:
Не нравится:
|
|||
16.12.2019, 20:15 |
|
Запуск другого процесса
|
|||
---|---|---|---|
#18+
>vill_ager, 16 дек 19, 20:15 https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1320388&msg=22041559][22041559] >вместо минимизации - модальное окно … <статическая картинка модального окна - также не комфортно для пользователя поступил так - построил дополнительное приложение для отражения процесса ожидания, содержит: - изображение звездного неба, - анимационный файл вращения земли, - полоску ProgresBar с "тяжёлым" приложением работаю так: 1. активизирую приложение ожидания info_Ожидание = new ProcessStartInfo() {FileName = "" + гп.Ожидание + "", Arguments = гп.tm_Запрос.ToString(), WindowStyle = ProcessWindowStyle.Normal}; p_Ожидание = Process.Start(info_Ожидание); Thread.Sleep(3000); 2. переношу файл с файлового сервера в рабочий каталог клиентского компа if (гп.blNetworkConnection) using (new NetworkConnection(гп.uri_ХранилищеДФП, гп.theNetworkCredential)) { изШары_P();} else изШары_P(); 3. активизирую "тяжелое" приложение var info_Paint = new ProcessStartInfo() {FileName = "" + гп.Paint + "", Arguments = фд_док, WindowStyle = ProcessWindowStyle.Normal}; p_App = Process.Start(info_Paint); Thread.Sleep(7000); //-- Запускаем paint.net 4. работаю с "тяжёлым" приложением App.Current.MainWindow.WindowState = WindowState.Minimized; //-- Минимизируем функциональное приложение p_Ожидание.Kill(); p_App.WaitForExit(); App.Current.MainWindow.WindowState = WindowState.Normal; ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2019, 20:04 |
|
Запуск другого процесса
|
|||
---|---|---|---|
#18+
ВМоисеев, решение не универсальное Не прошло и месяца, как мне тоже пришлось решать такую же задачку - из программы открыть на редактирование файл, после окончания - что-то с ним сделать. Основная проблема - не замерзший экран, а выловить момент закрытия файла. Например - из программы как-то открыли файл в Word, потом пользователь самостоятельно открывает еще один файл. Закрывает первый файл, а программа ждет завершения процесса, ведь в нем все еще открыт второй файл. +нужно как-то узнать, где этот word или paint лежит, лишняя морока. Сделал так: Код: python 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18.
... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2020, 21:05 |
|
Запуск другого процесса
|
|||
---|---|---|---|
#18+
>vill_ager, сегодня, 21:05 https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1320388&msg=22063319][22063319] >...решение не универсальное… Основная проблема - не замерзший экран, а выловить момент закрытия файла... < У меня несколько другая задача - прикладное приложении открывает word (или paint) для работы с файлом хранилища. Не важно, сколько ещё файлов откроет клиент в word-е, прикладное приложение активизируется вновь только после завершения собственно word, а не закрытия какого то файла в word-е. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2020, 21:41 |
|
Запуск другого процесса
|
|||
---|---|---|---|
#18+
ВМоисеев, Думаю что пользователь не сразу сообразит, почему он не может работать с Вашей программой после завершения редактирования файла. Нужно еще догадаться, что нужно закрыть все документы WORD. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2020, 22:19 |
|
Запуск другого процесса
|
|||
---|---|---|---|
#18+
>vill_ager, вчера, 22:19 https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1320388&msg=22063351][22063351] >...Нужно еще догадаться, что нужно закрыть все документы WORD. < Рабочая инструкция ... |
|||
:
Нравится:
Не нравится:
|
|||
21.01.2020, 01:44 |
|
Запуск другого процесса
|
|||
---|---|---|---|
#18+
ВМоисеев Рабочая инструкция ... |
|||
:
Нравится:
Не нравится:
|
|||
21.01.2020, 12:09 |
|
Запуск другого процесса
|
|||
---|---|---|---|
#18+
>Zmeelov2, сегодня, 12:09 https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1320388&msg=22063607][22063607] >Не имеют… < У меня несколько иной опыт - пользователи быстро понимают, - для того чтобы сохранить редактируемый документ word в хранилище, нужно закрыть ворд - ибо он работает с локальной копией. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.01.2020, 14:22 |
|
Запуск другого процесса
|
|||
---|---|---|---|
#18+
ВМоисеев У меня несколько иной опыт - пользователи быстро понимают … ... |
|||
:
Нравится:
Не нравится:
|
|||
21.01.2020, 15:04 |
|
|
start [/forum/topic.php?fid=33&msg=39916562&tid=1547127]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
42ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
others: | 303ms |
total: | 429ms |
0 / 0 |