powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как в текстовое поле другой программы вписать текст?
3 сообщений из 3, страница 1 из 1
Как в текстовое поле другой программы вписать текст?
    #37607822
donpauls
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как в текстовое поле другой программы вписать программно текст и нажать Ентер?
В каком направлении копать?
...
Рейтинг: 0 / 0
Как в текстовое поле другой программы вписать текст?
    #37607869
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
donpaulsКак в текстовое поле другой программы вписать программно текст и нажать Ентер?
В каком направлении копать? я в своё время мог программно добавить в друзья чела позвонить от его имени кому-нить и отправить от его имени сообщение себе в скайпе имитируя при помощи sendkeys tab alt и ещё нескольких полезных клавиш) - минус - окно долю секунды будет мелькать перед пользователем, т.к. необходим фокус.
кроме того, можешь прописать в параметрах при открытии чужой программы то, что нужно(параметры разбирались в некоторых моих и чужих топиках на форуме), тогда посторонняя прога будет запускаться с уже введёнными нужными данными. недостатков в обращении нет, но врят ли всё можно сделать при помощи параметров...
...
Рейтинг: 0 / 0
Как в текстовое поле другой программы вписать текст?
    #37608876
Дмит
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Простой пример:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Long
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Integer, ByVal lParam As Any) As Long
Private Const WM_CHAR = &H102
Private Const WM_SETTEXT = &HC
Private Const VK_RETURN = &HD
Private Const EM_SETSEL = &HB1
Sub ui()
Dim hwnd As Long, wnd As Long
    Call Shell("notepad", vbNormalFocus) 'запускаем блокнот
    hwnd = FindWindow(vbNullString, "Безымянный - Блокнот") 'получаем hwnd окна блокнота по заголовку
    wnd = FindWindowEx(hwnd, ByVal 0&, "Edit", vbNullString) 'получаем hwnd текстбокса блокнота
    Call SendMessage(wnd, WM_SETTEXT, 0, "Привет") 'изменяем текст в текст боксе на "Привет"
    Call SendMessage(wnd, EM_SETSEL, 6, "") 'сдвигаем курсор на 6 знаков
    Call SendMessage(wnd, WM_CHAR, VK_RETURN, vbNullString) 'нажимаем Enter
End Sub
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как в текстовое поле другой программы вписать текст?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]