Послать нажатие клавиши в стороннее приложение - VB

Узнай цену своей работы

Формулировка задачи:

День добрый, у меня следующий код обращается к другим приложениям:
Листинг программы
  1. On Error Resume Next
  2. AppActivate ("Блокнот")
  3. SendKeys ("{enter}")
К примеру если запущен Блокнот то туда "пошлётся" enter. Но в одной программе этот код действует не правильно (посылает вместо ентера (и любой клавиши) ескейп). Подкиньте плиз аналогию на api (если есть), гляну будет работать или нет. Заранее благодарен

Решение задачи: «Послать нажатие клавиши в стороннее приложение»

textual
Листинг программы
  1. Option Explicit
  2. Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
  3. Private Declare Function SendMessage _
  4. Lib "user32" Alias "SendMessageA" _
  5. (ByVal hwnd As Long, _
  6. ByVal wMsg As Long, _
  7. ByVal wParam As Long, _
  8. lParam As Any) As Long
  9.  
  10. Const WM_SYSCOMMAND = &H112
  11.      Const SC_CLOSE = &HF060
  12.      Dim a As Long, b As Long
  13.  
  14. Private Sub Form_Load()
  15. b = FindWindow(vbNullString, "Калькулятор")     'К примеру
  16. End Sub
  17.  
  18. Private Sub Command1_Click()
  19. a = SendMessage(b, WM_SYSCOMMAND, SC_CLOSE, 0)
  20. End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 4.333 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы