![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
||||
|
||||
![]() Доброе утро форум! Нужна помощь в такой проблеме: Есть два приложения, одно написано на Delphi, второе скачано из интернета (оба программаторы под разные микросхемы), и так, то приложение, что скачано из интернета, когда запущено в Windows, начинает функционировать после нажатия клавиши F5. Хотелось бы сделать так: Приложение написанное на Delphi после нажатия кнопки F4 выполняет свою функцию (реализовано) и после например нажатия кнопки F3 автоматически переключается на приложение скачанное из интернета и запускает его (Нажимает F5). Цель: Хочется добиться максимальной автоматизации процесса шитья микросхем, одной-двумя кнопками, не переключая между собой приложения мышью или кнопками Alt-Tab.
Последний раз редактировалось by.Kirill, 15.03.2011 в 11:23. |
#2
|
|||
|
|||
![]() По нажатию кнопки, ищем окно второго приложения:
Код:
function FindWindow(ClassName, WindowName: PChar): HWnd; Код:
function SetFocus (hWnd: HWND): HWND; или function SetForegroundWindow(hWnd:HWND):LongBool; //предпочтительнее Код:
CreateProcess; //описание в интернете или function ShellExecute(hWnd: HWnd; Operation, FileName, Parameters, Directory: PChar; ShowCmd: Integer): HINST; stdcall; //предпочтительнее Последний раз редактировалось Asinkrit, 15.03.2011 в 11:12. |
#3
|
||||
|
||||
![]() по данному методу, после окончания шитья обеих микросхем, в Windows у меня будет выделено окно с программой написанной в Delphi ? или будет выделена уже программа скачанная из интернета?
|
#4
|
|||
|
|||
![]() Я уже запутался в ваших программах, сколько их? две по шитью? одна скачанная из интернета? И программа на дельфи? Еще раз и все сначала. Где вы нажимаете F5, где F4 и F3?
Если вы были в приложении написанном на дельфи, и нажали на F3 (по условию), откроется программа шитья микросхем, если ее закрыть (не переключаясь между окнами), то вернетесь в программу написанную на дельфи. |
#5
|
||||
|
||||
![]() мне её закрывать не надо, мне надо как то возвратиться на программу написанную на Delphi... Блоков которые надо прошивать очень большое количество, в каждом блоке по 2 микрухи которые надо прошить. Условие немного надо наверное поменять, и так есть две программы, одна написана на Delphi, 2-ая скачана с интернета. Пусть кнопкой F4 запускается процесс шитья программой которая написана на Delphi, кнопкой F5 запускается процесс шитья программой скачанной с интернета. Хотелось бы сделать следующее. Я нажимаю F4 шьется первая микруха, далее хочется, что бы из Delphi запускался процесс шитья 2-ой микросхемы без использования комбинации Alt+Tab (переключение между запущенными приложениями), и после завершения шитья 2-ой микросхемы приложением скачанным из интернета, можно было на программаторе поменять плату и без использовании мышки, запустить процесс шитья сперва первой микрухи, потом 2-ой и так по кругу
|
#6
|
|||
|
|||
![]() Примерно понял что вы хотите, предлагаю поставить глобальный хук на клавиши F3 и F4, для запуска первый и второй программы, алгоритм обработки кнопок, описан выше. Алгоритм установки хука здесь.
Получим следующее, если запустить приложение, на дельфи, то в системе зарезервируем (установим хук) кнопки F3 и F4, после в любой программе, при нажатиях на них, будет запущена или активизирована одна из программ. то есть для начала работ, пользователю требуется запустить программу на дельфи, после окончания работ, закрыть все приложения, хотя можно сделать что-бы к примеру Ctrl-F3(F4) закрывали эти программы, ну если хочется что бы и программа дельфи закрывалась после закрытия обеих программ (хук надо снимать), то в алгоритм обработки кнопки, добавляем включение таймера, которой раз в секунду (чаще или реже) ищет окна этих двух программ и если их не находит, то закрывает себя. Можно сделать что бы программы вообще не было видно, для этого гасим показ формы и убираем ее с нижней панели задач. Выглядеть это будет следующим образом, пользователь запускает ярлык, ему сообщается что программа запущена, и программа прячется, дальше пользователь работает кнопками F3-F4, открывая и переключаясь между окнами, а после того как закрываем оба приложения, то программа уловив это спрашивает пользователя, не закрыться и ей, в случае если пользователь соглашается, то программа себя завершает. Это если я понял что вы хотите. |