2016-08-24 4 views
-5

Я ищу код, который может скрыть окно (видимость = ложь) по его названию. (и я не ищу задачу убийства) У меня уже есть код, который приносит мне роль родителя, затем я могу отправить Showwindow(number of handle, sw_hide); во внешнее приложение.Delphi - Скрыть окно по его названию

но теперь я ищу что-то быстрее ...

Я код, который может убить окно по заголовку: если мы можем изменить его, чтобы скрыть окно, это будет хорошо.

begin 
    PID := FindProcessByTitle('Form1'); 
    if PID <> 0 then 
     begin hProcess := OpenProcess(PROCESS_TERMINATE, FALSE, PID); 

    if hProcess <> 0 then begin TerminateProcess(hProcess,0); CloseHandle(hProcess); 

end; 

ответ

3

Это относительно просто. Выполните следующие действия:

  1. Использование FindWindow или FindWindowEx или EnumerateWindows, чтобы найти окно.
  2. Используйте ShowWindow, чтобы скрыть окно.

Вы уже знаете о ShowWindow так, предположительно, проблема с пунктом 1. Но тогда вы снова, по-видимому, уже знаете, как получить PID из заголовка окна, которое будет означать, что у вас есть, как часть этого процесса, было способный найти ручку окна.

Итак, возьмите свой существующий код и измените FindProcessByTitle, чтобы вернуть дескриптор окна, а не PID.

Вы также отмечаете, что хотите, чтобы ваш код работал быстрее. Процесс, описанный выше, должен выполняться чрезвычайно быстро. Если ваш код медленный, мы не можем действительно советовать, как улучшить его скорость (если это действительно возможно) без видимого кода.

Короче говоря, я, вероятно, не ответил бы на вопрос в его текущей форме и вместо этого попросил вас сначала задать вопрос.

+0

Я не ищу скрытое окно. Я смотрю, чтобы СКРЫТЬ ОКНО. благодаря . если вы можете дать код. что будет здорово. –

+6

'ShowWindow' - это то, как вы скрываете окна. Вы считаете, что нанимаете программиста для написания кода для вас. Stack Overflow - это не сайт, на котором вы можете бесплатно выполнять свои программы. Если у вас уже есть программист, почему бы не попросить их написать код? Если у вас есть код, который не работает, покажите [mcve] и попросите конкретную помощь в понимании того, что не так. Я вижу, что вы новичок в SO, возможно, поездка в [help] была бы полезна. –

+0

Большое спасибо, не нервничайте. я просто сказал, что если кто-то может отправить нам код, это будет здорово. вот все –

Смежные вопросы