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 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61
| Private Const MOD_ALT = &H1
Private Const MOD_CONTROL = &H2
Private Const MOD_SHIFT = &H4
Private Const PM_REMOVE = &H1
Private Const WM_HOTKEY = &H312
Private Type POINTAPI
x As Long
y As Long
End Type
Private Type msg
hWnd As Long
message As Long
Wparam As Long
lparam As Long
time As Long
pt As POINTAPI
End Type
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" ( _
ByVal lpClassName As String, _
ByVal lpWindowName As String _
) As Long
Private Declare Function RegisterHotKey Lib "user32" (ByVal hWnd As Long, _
ByVal id As Long, _
ByVal fsModifiers As Long, _
ByVal vk As Long _
) As Long
Private Declare Function UnregisterHotKey Lib "user32" ( _
ByVal hWnd As Long, _
ByVal id As Long _
) As Long
Private Declare Function PeekMessage Lib "user32" Alias "PeekMessageA" ( _
lpMsg As msg, _
ByVal hWnd As Long, _
ByVal msgFilterMin As Long, _
ByVal wMsgFilterMax As Long, _
ByVal wremoveMsg As Long _
) As Long
Private Declare Function WaitMessage Lib "user32" () As Long
sub test()
Dim message As msg
Dim messageVoid As msg
ffa = RegisterHotKey(WinID, &HBFFF, MOD_CONTROL, vbKeyQ)
Do
WaitMessage
If (PeekMessage(message, WinID, WM_HOTKEY, WM_HOTKEY, PM_REMOVE)) Then
testString = "toto"
SendKeys testString, True
End If
DoEvents
Loop
End sub |
Partager