Послать нажатие клавиши в стороннее приложение - VB
Формулировка задачи:
День добрый, у меня следующий код обращается к другим приложениям:
К примеру если запущен Блокнот то туда "пошлётся" enter.
Но в одной программе этот код действует не правильно (посылает вместо ентера (и любой клавиши) ескейп).
Подкиньте плиз аналогию на api (если есть), гляну будет работать или нет. Заранее благодарен
Листинг программы
- On Error Resume Next
- AppActivate ("Блокнот")
- SendKeys ("{enter}")
Решение задачи: «Послать нажатие клавиши в стороннее приложение»
textual
Листинг программы
- Option Explicit
- Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
- 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
- Const WM_SYSCOMMAND = &H112
- Const SC_CLOSE = &HF060
- Dim a As Long, b As Long
- Private Sub Form_Load()
- b = FindWindow(vbNullString, "Калькулятор") 'К примеру
- End Sub
- Private Sub Command1_Click()
- a = SendMessage(b, WM_SYSCOMMAND, SC_CLOSE, 0)
- End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д