Программа управляющая другой программой - VB
Формулировка задачи:
Как можно сделать программу которая сможет например нажимать кнопку в другом окне или вводить текст в поле или считывать его?
Решение задачи: «Программа управляющая другой программой»
textual
Листинг программы
Const BM_CLICK = 245
'Объявляем необходимые API
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 FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function PostMessage Lib "user32" Alias "PostMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Dim tWnd As Long, bWnd As Long
Private Sub Form_Load()
'Ищем хендл главного окна - у нас трей
tWnd = FindWindow("Shell_TrayWnd", vbNullString)
'Ищем хендл дочернего окна - у нас кнопка Пуск
bWnd = FindWindowEx(tWnd, ByVal 0&, "BUTTON", vbNullString)
'Нажимаем на кнопку Пуск - выезжает меню!
PostMessage bWnd, BM_CLICK, 0&, 0&
End Sub