Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.87/15: Рейтинг темы: голосов - 15, средняя оценка - 4.87
1 / 1 / 5
Регистрация: 28.03.2013
Сообщений: 299
1

Handle чужого окна

28.03.2013, 14:04. Просмотров 2919. Ответов 18
Метки нет (Все метки)

Всем привет. Проблема в следующем:
Есть окно посторонней программы, на ней расположено 2 поля для ввода текста (возможно не edit) и кнопка. Как посредством delphi ввести нужные данные в поле 1, потом в поле 2, и нажать кнопку?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.03.2013, 14:04
Ответы с готовыми решениями:

Handle окна
подскажите пожалуйста я нахожу два окна присваиваю им имена окно 1 и окно 2 но теперь не могу...

Handle окна по процессу
Нужно получить Handle окна программы по ее процессу Если у процесса много окон то нужно главное...

Название кнопки чужого окна
Ситуация такая: нужно получить надпись кнопки из программы, написанной на шарпе Делаю так: var ...

Обрезка части чужого окна
Как из чужого окна взять какую-то часть. Ну, к примеру в Google Chrome. Взять часть панели которая...

18
2645 / 2268 / 278
Регистрация: 24.12.2010
Сообщений: 13,725
28.03.2013, 14:24 2
Никак, пока ты не выяснишь что за конкретные объекты там реализуют интерактивные поля ввода и кнопку.
1
1 / 1 / 5
Регистрация: 28.03.2013
Сообщений: 299
28.03.2013, 14:48  [ТС] 3
как выяснить?
0
2645 / 2268 / 278
Регистрация: 24.12.2010
Сообщений: 13,725
28.03.2013, 14:57 4
WinSight
Spy++
0
1 / 1 / 5
Регистрация: 28.03.2013
Сообщений: 299
28.03.2013, 15:07  [ТС] 5
неполучается узнать что за компоненты. Могу узнать название формы.

Добавлено через 3 минуты
ну и hendle окна
0
2645 / 2268 / 278
Регистрация: 24.12.2010
Сообщений: 13,725
28.03.2013, 15:09 6
Цитата Сообщение от EEjester Посмотреть сообщение
неполучается узнать что за компоненты. Могу узнать название формы
То есть ты как-то же умудрился определить что чужое окно принадлежит форме дельфийского приложения ?
0
1 / 1 / 5
Регистрация: 28.03.2013
Сообщений: 299
28.03.2013, 15:10  [ТС] 7
Handle чужого окна


Добавлено через 43 секунды
Цитата Сообщение от mss Посмотреть сообщение
форме дельфийского приложения
с чего ты взял? Скорее всего чужое окно написано на шарпе.
0
2645 / 2268 / 278
Регистрация: 24.12.2010
Сообщений: 13,725
28.03.2013, 15:17 8
Цитата Сообщение от EEjester Посмотреть сообщение
с чего ты взял?
С того что была упомянута "форма" и "компоненты" - характерные для дельфийских приложений термины.

Цитата Сообщение от EEjester Посмотреть сообщение
Скорее всего чужое окно написано на шарпе
С чего ты взял что на шарпе ?
Из скриншота это вовсе не очевидно.
0
1 / 1 / 5
Регистрация: 28.03.2013
Сообщений: 299
28.03.2013, 15:21  [ТС] 9
Цитата Сообщение от mss Посмотреть сообщение
С чего ты взял что на шарпе ?
Из скриншота это вовсе не очевидно.
Знакомы программист сказал. Но я не уверен что он прав, поэтому и сказал что "скорее всего".

Ну так что, вопрос остался. Можешь помочь мне с этой проблемой?
0
2645 / 2268 / 278
Регистрация: 24.12.2010
Сообщений: 13,725
28.03.2013, 15:26 10
Цитата Сообщение от EEjester Посмотреть сообщение
Но я не уверен что он прав
Так уверься или опровергни окончательно это предположение ..
При условии что окна искомых контролов тобой не обнаружены без этого дальше двигаться бессмысленно
0
1 / 1 / 5
Регистрация: 28.03.2013
Сообщений: 299
28.03.2013, 15:33  [ТС] 11
Цитата Сообщение от mss Посмотреть сообщение
При условии что окна искомых контролов тобой не обнаружены без этого дальше двигаться бессмысленно
Что бы их обноружить нужно узнать на чем написана программа?

Добавлено через 4 минуты
Как я понял мне не определить на чем она написана... Ибо нужно рыть hex и искать определенные индивидуальные функции, а потом смотреть в гугле что они значат. Либо искать следы декомпилятора, в чём я тоже не силен.
0
2645 / 2268 / 278
Регистрация: 24.12.2010
Сообщений: 13,725
28.03.2013, 15:40 12
Цитата Сообщение от EEjester Посмотреть сообщение
Что бы их обноружить нужно узнать на чем написана программа?
Не нужно.
Для того и рекомендованы инструменты WinSight и Spy++
Вот если окна у искомых контролов 100%-но не обнаружены, тогда без определения среды разработки точно не обойтись. В зависимости от этого и принимается решение куда дальше оглобли заворачивать.


Цитата Сообщение от EEjester Посмотреть сообщение
нужно рыть hex
Первое что следует сделать - определить не упакованли исп.модуль.
Если упакован - детектировать чем, искать распаковщик и пытаться распакоавть.
Если не упакован или удалось успешно распаковать, лезешь в список статически импортируемых dll и ресурсы модуля и ищешь признаки, характерные для той или иной среды разработки.
А гекс-дамп модуля тоже не последняя инф-ция в дополнение к этому - там можно поискать сигнатуры, характерные для различных сред разработки.
0
1 / 1 / 5
Регистрация: 28.03.2013
Сообщений: 299
28.03.2013, 15:43  [ТС] 13
mss, у тебя есть опыт в моей проблеме? Если да, то я предлогаю тебе сотрудничество. С тебя работа, с меня бабло. Что и как могу рассказать, но только в л.с. Может в skype или vk?
0
2645 / 2268 / 278
Регистрация: 24.12.2010
Сообщений: 13,725
28.03.2013, 16:02 14
Цитата Сообщение от EEjester Посмотреть сообщение
Что и как могу рассказать, но только в л.с.
А что вдруг такая секретность ?)
0
1 / 1 / 5
Регистрация: 28.03.2013
Сообщений: 299
28.03.2013, 16:04  [ТС] 15
mss, проект секретный, до меня такое ещё не кто в паблике не повторял. Сразу говорю, денег будет много, но и проблем не меньше. Основная обязанность будет на мне, на тебе только кодинг.
0
2645 / 2268 / 278
Регистрация: 24.12.2010
Сообщений: 13,725
28.03.2013, 16:11 16
Ну давай сюда свои координаты - email, icq uin.
Потолкуем о делах твоих скорбных)
0
1 / 1 / 5
Регистрация: 28.03.2013
Сообщений: 299
28.03.2013, 16:13  [ТС] 17
в vk ине напиши, а дальше видно будет где связь держать будем.
https://vk.com/eejester
0
2645 / 2268 / 278
Регистрация: 24.12.2010
Сообщений: 13,725
28.03.2013, 16:23 18
Цитата Сообщение от EEjester Посмотреть сообщение
в vk ине напиши
Я не хожу по помойкам.
0
0 / 0 / 1
Регистрация: 24.11.2015
Сообщений: 49
29.10.2017, 19:59 19
Delphi
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
type 
  TForm1 = class(TForm) 
    Label1: TLabel; 
    Label2: TLabel; 
    Timer1: TTimer; 
    procedure Timer1Timer(Sender: TObject); 
    procedure FormCreate(Sender: TObject); 
  private 
    procedure ShowHwndAndClassName(CrPos: TPoint); 
  public 
 
end; 
 
var 
  Form1: TForm1; 
 
implementation 
 
{$R *.DFM} 
 
procedure TForm1.Timer1Timer(Sender: TObject); 
var 
  rPos: TPoint; 
begin 
  if Boolean(GetCursorPos(rPos)) then ShowHwndAndClassName(rPos); 
end; 
 
procedure TForm1.ShowHwndAndClassName(CrPos: TPoint); 
var 
  hWnd: THandle; 
  aName: array [0..255] of Char; 
begin 
  hWnd := WindowFromPoint(CrPos); 
  Label1.Caption := 'Handle :  ' + IntToStr(hWnd); 
 
  if Boolean(GetClassName(hWnd, aName, 256)) then 
    Label2.Caption := 'ClassName :  ' + string(aName) 
  else 
    Label2.Caption := 'ClassName :  not found'; 
end; 
 
procedure TForm1.FormCreate(Sender: TObject); 
begin 
  Form1.FormStyle := fsStayOnTop; 
  Timer1.Interval := 50; 
end;
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
29.10.2017, 19:59

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

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

Смена раскладки клавиатуры чужого окна
ShowWindow(h,SW_SHOW); BringWindowToTop(h); SetForegroundWindow(h); //PostMessage(h,...

WH_KEYBOARD_LL Хук, русские буквы из чужого окна
Всем привет! Перехватываю нажатия клавиш... но к сожалению не получается перехватить буквы с...

Как узнать handle окна к которому подключена dll
Ставлю глобальных хук с помощью dll ( SetWindowsHookEx(WH_CBT, @WindowProc, HInstance, 0) ), мне...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
19
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.