Следующий код возвращает "Run-Time Error 5: Неправильный вызов процедуры или аргумент" в строке:Недопустимый вызов процедуры или аргумент (ошибка 5) при вызове User32 PostMessage
результат = PostMessage (ч, WM_CHAR, Asc (Mid $ (vbCr, я, 1)), 0 &)
Private Const WM_CHAR = &H102
Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Declare Function PostMessage Lib "user32" Alias "PostMessageA" (ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
Sub PostToCmdLine()
Dim h As Long
Dim result As Boolean
' find dos prompt window
h = FindWindow(vbNullString, "c:\windows\system32\cmd.exe")
Stop
If h Then
' send "calc.exe" followed by carraige return
result = PostMessage(h, WM_CHAR, Asc(Mid$(vbCr, i, 1)), 0&)
' optional, check postmessage result
If result = False Then MsgBox ("postmessage failed!")
'close the hidden dos prompt window
' SendTxt(h, "exit" & vbCr)
Else
MsgBox ("dos prompt window not found")
End If
End Sub
Что я делаю неправильно?
Работали !!! Спасибо за очень тщательный ответ. – Daniel