Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Visual Basic 6 - Cerco Aiuto: AttachThreadInput, GetWindowThreadProcessId, GetCurrentThreadId
Forum - Visual Basic 6 - Cerco Aiuto: AttachThreadInput, GetWindowThreadProcessId, GetCurrentThreadId

Avatar
()
Newbie


Messaggi:
Iscritto:

Segnala al moderatore
Postato alle 1:00
Giovedė, 01/01/1970
Chi mi saprebbe spiegare riga per riga cosa fa la procedura all'interno del timer? Grazie infinite!

Private Declare Function AttachThreadInput Lib "user32" (ByVal idAttach As Long, _
   ByVal idAttachTo As Long, ByVal fAttach As Long) As Long
Private Declare Function GetForegroundWindow Lib "user32" () As Long
Private Declare Function GetFocus Lib "user32" () As Long
Private Declare Function GetWindowThreadProcessId Lib "user32" (ByVal hwnd As Long, _
   lpdwProcessId As Long) As Long
Private Declare Function GetCurrentThreadId Lib "kernel32" () As Long

Private Sub Timer1_Timer()
   hFore = GetForegroundWindow()
   Call AttachThreadInput(GetWindowThreadProcessId(hFore, 0&), GetCurrentThreadId, True)
   hFocus = GetFocus
   Call AttachThreadInput(GetWindowThreadProcessId(hFore, 0&), GetCurrentThreadId, False)
End Sub

PM
Avatar
GrG (Member)
Guru^2


Messaggi: 3430
Iscritto: 21/08/2007

Up
0
Down
V
Segnala al moderatore
Postato alle 15:50
Lunedė, 08/11/2010
Private Sub Timer1_Timer()
   hFore = GetForegroundWindow()
GetForegroundWindow che mi pare serva a ricavare il titolo della finestra in fondo, e viene memorizzato in hFore un valore numerico che indica se l'api ha svolto il suo compito o meno
   Call AttachThreadInput(GetWindowThreadProcessId(hFore, 0&), GetCurrentThreadId, True)
"The AttachThreadInput function attaches or detaches the input processing mechanism of one thread to that of another thread. "
   hFocus = GetFocus
restituisce l'handle della finestra che ha il focus 'della tastiera'
   Call AttachThreadInput(GetWindowThreadProcessId(hFore, 0&), GetCurrentThreadId, False)
End Sub

PM
Usa i commenti per chiedere spiegazioni o ringraziare le risposte.