Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.91/11: Рейтинг темы: голосов - 11, средняя оценка - 4.91
dima-pol
1

Доступ к TextBox чужого (не VB6) приложения

17.01.2013, 23:04. Показов 1958. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здраствуйте!

Из своей программы на VB6 я хочу добраться до содержимого TextBox другой программы. Для этого на форму своей программы я поместил элемент picPoint типа PictureBox. Я нажимаю мышку на этом picPoint, перемещаю в окно другой программы и отпускаю на TextBox. Тем самым я определяю его hWnd а затем и его содержимое (found_text):


Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Private Sub picPoint_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)
    PointMode = True
    dl& = SetCapture(Form1.hwnd)
End Sub
 
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, x As Single, y As Single)
    Dim pt As POINTAPI
 
    If Not PointMode Then Exit Sub
    pt.x = x
    pt.y = y
    ClientToScreen Form1.hwnd, pt
    found_hWnd& = WindowFromPoint(pt.x, pt.y)
 
   count = GetWindowText(found_hWnd, buffer, 255)
   found_text = Left$(buffer, count)
End Sub
Это прекрасно работает, если TextBox в программе, созданной на VB6. Но если я нацеливаюсь мышкой к примеру на TextBox "мин", "сек" или "фрм" на вкладке "Файл/Предустановки/Общий" в Nero 6.3.1.15. то GetWindowText возвращает заголовок фрейма ("Панель состояния") в котором размещены вышеобозначенные TextBox.

Возможно ли средствами VB6 получить доступ к содержимому TextBox в Nero?

Спасибо.
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.01.2013, 23:04
Ответы с готовыми решениями:

Доступ к TextBox (TMemo) чужого приложения
Создавал тему про поиск слов в блокноте, но задаче немного другая. Есть чужая программа, в этой...

Доступ к форме с чужого потока
как разрешить этот доступ??

Доступ к объекту чужого класса
Доброго времени суток. Есть форма и ф-я, описанная в классе Program. Эта ф-я должна обратиться к...

Доступ к контролам чужого окна
Как можно получить доступ к контролам чужого окна, зная его HWND? Конкретно мне нужно тестовое...

1
6804 / 2831 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
18.01.2013, 09:49 2
Цитата Сообщение от dima-pol Посмотреть сообщение
Возможно ли средствами VB6 получить доступ к содержимому TextBox в Nero?
Дело в том, что MSDN рекомендует в случае с классом Edit ( да и в других случаях, когда GetWindowText возвращает ""), использовать WM_GETTEXT.
WM_GETTEXT = &HD
Выглядит это примерно так:
Visual Basic
1
2
3
4
wnd = WindowFromPoint(pt.X, pt.Y) ' Get the window under mouse pointer
buff = Space$(50)
SendMessage wnd, &HD, 40, ByVal buff 'sending WM_GETTEXT message to that window
Label1.Caption = buff 'Now buff contains the text on the window , simply display
Ещё нюанс - TextBox должен быть доступен ( Enable=True). А если "серый", то его надо вначале включить.
Это означает, что надо найти все дочерние окна на вкладке "Файл/Предустановки/Общий" при помощи FindWindowEx и включить с помощью EnableWindow.

Не по теме:

Ну да что я, право. Судя по Вашему коду Вы и сами в этом разбираетесь не хуже меня.

3
18.01.2013, 09:49
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.01.2013, 09:49
Помогаю со студенческими работами здесь

Вызов чужого приложения
Нужно из сервиса запустить приложение (например калькулятор) В самом сервисе таймер и в процедуру...

Закрыть окно чужого приложения
Как закрыть окно чужого приложения?

Запись в ресурсы чужого приложения
Как мне вытащить из другого exe его rc и туда что нибудь запихнуть? Добавлено через 7 минут...

Управление окном чужого приложения
Расскажу как есть. Есть приложение, окном которого нужно управлять через свою прогу. void...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru