|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
26.01.2008, 15:36 | #1 |
Пользователь
Регистрация: 26.01.2008
Сообщений: 10
|
чужое приложение
Привет всем.
Есть приложение написаное на платформе net. Как я могу из своего приложения( Delphi) узнать какие компоненты присутствуют на форме чужого приложения? по возможности их перечислить и узнать хэндлы? Кто-нить может помочь в данном вопросе? |
26.01.2008, 15:41 | #2 |
Android Developer
Старожил Подтвердите свой е-майл
Регистрация: 19.02.2007
Сообщений: 3,708
|
FindWindow, FindWindowEx... еще есть несколько функций api
|
26.01.2008, 19:14 | #3 |
Пользователь
Регистрация: 26.01.2008
Сообщений: 10
|
2 BOBAH13.
Так, на главной форме чужой проги есть картинка. я узнал ее хэндл и скопировал в *.bmp файл. Все Ок. Но вот вопрос, можно ли зная хэндл картинки на форме чужой проги скопировать эту картинку, если чужая программа свернута. т.е. картинки мы не видим, а знаем только ее хэндл? |
26.01.2008, 20:26 | #4 |
Форумчанин
Регистрация: 24.12.2007
Сообщений: 288
|
А как узнать Хендл???
|
26.01.2008, 20:40 | #5 |
Пользователь
Регистрация: 26.01.2008
Сообщений: 10
|
2 aesoem
вот один из способов нашел: указываешь координаты картинки. SetCursorPos(488,13); h := WindowFromPoint(Mouse.CursorPos); h- хэндл. вроде работает |
26.01.2008, 23:51 | #6 |
Android Developer
Старожил Подтвердите свой е-майл
Регистрация: 19.02.2007
Сообщений: 3,708
|
Странно вы сделали Я имеел ввиду перебор дочерних окон.
|
27.01.2008, 11:59 | #7 |
Пользователь
Регистрация: 26.01.2008
Сообщений: 10
|
2 BOBAH13
можно было бы и по другому как нибудь, но это не так важно. важно, что при этом способе , когда приложение не свернуто-картинка копируется, а когда чужое приложение свернуто - не копируется. можно ли как нибудь скопировать картинку при свернутом приложении. она же явно где-то в памяти сидит. |
27.01.2008, 12:57 | #8 |
Новичок
Джуниор
Регистрация: 18.01.2008
Сообщений: 1,720
|
Почему же, можно схимичить. Можно взять контекст на нужное окно и отправить ему WM_PRINT с этим контекстом. Можно через SetWindowPos закинуть родителя нужного окна куда-нибудь далеко за экран (неминимизированном виде), взять картинку, а потом вернуть все на место.
|
27.01.2008, 14:29 | #9 |
Пользователь
Регистрация: 26.01.2008
Сообщений: 10
|
идея хорошая, но резушльтат такой же как и при минимизированном приложении. если картинка находится в видимых пределах экрана, тогда она копируется, если не в видимых,тогда вместо нее белый фон.
копировал картинку так : BitBlt( Canvas.Handle, 0, 0, Width, Height, WinDC, 0, 0, SRCCOPY); может тут лажа? |
27.01.2008, 14:43 | #10 |
Новичок
Джуниор
Регистрация: 18.01.2008
Сообщений: 1,720
|
А WinDC как получен?
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Вставка текста в чужое приложение | MyasNick | Win Api | 19 | 08.04.2012 10:46 |
Может кто знает как вставить текст в чужое поле ввода | Dark_Elf | Win Api | 4 | 20.08.2008 13:47 |
Скрыть чужое окно | ЧИЖ | Win Api | 8 | 12.06.2008 00:55 |
Как активировать чужое приложение | Hintman | Win Api | 3 | 30.04.2007 16:24 |