Юзер запускает неизвестное мне приложение. Если моя программа тоже запущена, то как я могу из моей программы автоматически нажать на кнопку в неизвестной проге? Для облегчения допустим, что кнопка в неизвестной проге Default.
Но, допустим я найду какое-то окно, а на кнопку в этом окне как нажать? Может какой-нибудь SendKeys "{vbReturn}"? Вообще SendKeys это не то. Не знаю...
Ммда... что-то у меня интернет проглючил. Вот пример по имитации клика по кнопке Пуск. Содран с какого-то сайта уже не помню с какого.
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long 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 Const BM_CLICK = &HF5 Private WndWind As Long Private WbdButton As Long Private Sub Command1_Click() Call SendMessage(WbdButton, BM_CLICK, 0, 0) End Sub Private Sub Form_Load() WndWind = FindWindow("Shell_TrayWnd", vbNullString) WbdButton = FindWindowEx(WndWind, 0, "Button", vbNullString) End Sub
Ммда... что-то у меня интернет проглючил. Вот пример по имитации клика по кнопке Пуск. Содран с какого-то сайта уже не помню с какого.
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long 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 Const BM_CLICK = &HF5 Private WndWind As Long Private WbdButton As Long Private Sub Command1_Click() Call SendMessage(WbdButton, BM_CLICK, 0, 0) End Sub Private Sub Form_Load() WndWind = FindWindow("Shell_TrayWnd", vbNullString) WbdButton = FindWindowEx(WndWind, 0, "Button", vbNullString) End Sub