Как убрать "подвешивание" вызывающего приложения при вызове другого через Shell? - VB
Формулировка задачи:
Пример кода:
Смысл кода:
если logbook.exe запущен то окно запущенного экземпляра просто выводится наверх
если НЕТ, то logbook.exe запускается через Shell
Есть проблемка. Если например logbook.exe запускается ощутимо долго (3 секунды к примеру - ну скажем listview c 4000 записей), то вызывающее приложение стормозит пока logbook.exe не запустится.
Если вызывающее приложение например проигрывает wav-файл, то проигрывание будет прервано на время запуска вызываемого, фигня, но по ушам ездит.
Второй неприятный эффект в таком же духе.
Например посылаю SendMessage (data) в вызываемое приложение.
Если в процедура обработки в вызываемом приложении требует какого-то времени, то опять же в вызывающем приложении будет подвисание.
Как лечить? PostMessage вместо SendMessage? Ну, если ответа не требуется?
Смысл кода:
если logbook.exe запущен то окно запущенного экземпляра просто выводится наверх
если НЕТ, то logbook.exe запускается через Shell
Есть проблемка. Если например logbook.exe запускается ощутимо долго (3 секунды к примеру - ну скажем listview c 4000 записей), то вызывающее приложение стормозит пока logbook.exe не запустится.
Если вызывающее приложение например проигрывает wav-файл, то проигрывание будет прервано на время запуска вызываемого, фигня, но по ушам ездит.
Как полечить?
Второй неприятный эффект в таком же духе.
Например посылаю SendMessage (data) в вызываемое приложение.
Если в процедура обработки в вызываемом приложении требует какого-то времени, то опять же в вызывающем приложении будет подвисание.
Как лечить? PostMessage вместо SendMessage? Ну, если ответа не требуется?
Решение задачи: «Как убрать "подвешивание" вызывающего приложения при вызове другого через Shell?»
textual
Листинг программы
Shell (, vbТакойТоБлинФокус)
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д