![]()  | 
	
 
  | 
		
			
  | 	
	
	
		
		|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны | 
![]()  | 
	
	
| 
		 | 
	Опции темы | Поиск в этой теме | Опции просмотра | 
| 
		 
			 
			#1  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 При нажатии на кнопку хочу чтоб программа в гарене заходила в комнату, а при нажатии другой - выходила.  
		
	
		
		
		
		
		
		
			Код: 
	procedure TForm1.btn1Click(Sender: TObject); var w_handle:integer; b_handle:integer; begin if FindWindow(nil, 'Garena LAN Game') <>0 then begin w_handle:= FindWindow(nil, 'Garena LAN Game'); b_handle:= FindWindowEx(w_handle, 0, nil, 'Russia DotA Clanwar Room 01 (1.26a)'); SendMessage(b_handle, wm_LButtondown, 1, 1); SendMessage(b_handle, wm_LButtonUp, 1, 1); end; end; Вот код, но что-то не получается. Последний раз редактировалось Flop88, 02.05.2012 в 22:37.  | 
| 
		 
			 
			#2  
			
			
			
			
		 
		
		
	 | 
||||
		
		
  | 
||||
| 
	
	
		
			
			 Что то мне кажется, это on-line игра? 
		
	
		
		
		
		
			
		
		
		
		
	
		
		
	
	
	 | 
| 
		 
			 
			#3  
			
			
			
			
		 
		
		
	 | 
||||
		
		
  | 
||||
| 
	
	
		
			
			 что именно не получается? 
		
	
		
		
		
		
		
	
		
		
	
	
	З.Ы. проверка на нахождение одного окна стоит, а на второе нет, может быть второе окно не находит c таким заголовком? (если оно есть, конечно, см. что писал angvelem) соответственно и нажатие на кнопку мыши не отправляется, координаты нажатия верные?  | 
| 
		 
			 
			#4  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 Angvelem,Не совсем  
		
	
		
		
		
		
		
	
		
		
	
	
	  Вот скриншотик   ![]() Нужно чтоб при нажатии кнопки заходило в комнату  | 
| 
		 
			 
			#5  
			
			
			
			
		 
		
		
	 | 
||||
		
		
  | 
||||
| 
	
	
		
			
			 Так поиск может ничего не дать. Где гарантия, что второе искомое окно лежит на первом. Пробуй EnumChildWindows. 
		
	
		
		
		
		
			
		
		
		
		
	
		
		
	
	
	 | 
| 
		 
			 
			#6  
			
			
			
			
		 
		
		
	 | 
||||
		
		
  | 
||||
| 
	
	
		
			
			 проще посмотреть классы интересующих оконных элементов каким-нибудь WinSpy, а заодно и выяснить можно ли их обнаружить 
		
	
		
		
		
		
		
	
		
		
	
	
	 | 
| 
		 
			 
			#7  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 Цитата: 
	
 ![]() Что именно тут выбирать ?  | 
| 
		 
			 
			#8  
			
			
			
			
		 
		
		
	 | 
||||
		
		
  | 
||||
| 
	
	
		
			
			 Нужное окно нашёл, теперь посмотри по закладкам, где описана иерархия "родителей". 
		
	
		
		
		
		
			
		
		
		
		
	
		
		
	
	
	 | 
| 
		 
			 
			#9  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 Этот скрин по удачнее будет  
		
	
		
		
		
		
		
	
		
		
	
	
	  ![]()  | 
| 
		 
			 
			#10  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 Цитата: 
	
   Я даже приблизительно не знаю как эта иерархия выглядит ![]()  | 
| 
		 
			 
			#11  
			
			
			
			
		 
		
		
	 | 
||||
		
		
  | 
||||
| 
	
	
		
			
			 Нет у меня WinSpy, без надобности. Посмотри по закладкам, кому принадлежит данное окно и так далее до самого верхнего уровня. 
		
	
		
		
		
		
			
		
		
		
		
	
		
		
	
	
	Честно говоря, не понимаю я такого псевдо-хака, каждый десятый вопрос, как залезть на сайт, на форум, в игру. Но у каждого свои приколы.  | 
| 
		 
			 
			#12  
			
			
			
			
		 
		
		
	 | 
||||
		
		
  | 
||||
	
	
		
			
			![]() получается следующее: на вкладке General в соответствующих полях прописаны заголовок (Caption) и класс окна (класс и заголовок указываются в параметрах функции поиска для нахождения окна), выделенного в дереве в правой половине окна. далее идут дочерние элементы со своими дочерними и их дочерними и т.д., если обнаружить необходимый элемент получилось - берем его заголовок и/или класс и подставляем в функцию поиска/перебора оконных элементов (FindWindow, FindWindowEx, EnumChildWindows), предварительно необходимо найти окно верхнего уровня - главную форму приложения З.Ы. картиночки слишком масштабные, если еще вставлять будете - подрезайте немного  |