|
Addressof ошибка
#35802198
Ссылка:
Ссылка на сообщение:
Ссылка с названием темы:
|
|
|
|
Мне нужно было чтобы Inputbox использовать для ввода пароля.
Нашел код
1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25.
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
Private Declare Function SetTimer& Lib "user32" (ByVal hWnd&, ByVal nIDEvent&, ByVal uElapse&, ByVal lpTimerFunc&)
Private Declare Function KillTimer& Lib "user32" (ByVal hWnd&, ByVal nIDEvent&)
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 Const NV_INPUTBOX As Long = &H5000&
Private Const EM_SETPASSWORDCHAR = &HCC
Private CaptionText As String
Public Sub TimerProc(ByVal hWnd&, ByVal uMsg&, ByVal idEvent&, ByVal dwTime&)
Dim myHwnd As Long
myHwnd = FindWindowEx(FindWindow(vbNullString, CaptionText), 0 , "Edit", "")
Call SendMessage(myHwnd, EM_SETPASSWORDCHAR, 42 , 0 )
KillTimer Application.Hinstance, idEvent
End Sub
Public Function InputBoxEx(Prompt As String, Caption As String) As String
Dim xxx As String
CaptionText = Caption
SetTimer Application.Hinstance, NV_INPUTBOX, 10 , AddressOf TimerProc
xxx = InputBox(Prompt, Caption)
InputBoxEx = xxx
MsgBox (xxx)
End Function
но вылетает ошибка на вот этой строке
SetTimer Application.Hinstance, NV_INPUTBOX, 10 , AddressOf TimerProc
invalid use of Addressof operator
|
|
|