webForumDet fria alternativet

Speedtype + mIRC

4 svar · 249 visningar · startad av Ekström

EkströmMedlem sedan feb. 20022 594 inlägg
#1

Tjena alla wF:are =) Längesen man var här nu...

Jag har byggt ett litet program i VB 6 för att testa hur fort man skriver. Man får skriva vad man vill och programmet tar tid, räknar ut KPM osv.

Grejen är att jag skulle vilja implementera det i mIRC. Så varje gång man skriver något i mIRC skulle den ta tid på det. Räkna ut KPM osv. =) Själva beräkningen är ju klar, men hur får jag det som skrivs i mIRC, bara mIRC att hamna i programmet?

nikoMedlem sedan juni 20022 599 inlägg
#2

Motfråga:

Vilken metod använder du för att över huvud taget fånga tangentnedtryckningar utanför din egen VB6-applikation?

EkströmMedlem sedan feb. 20022 594 inlägg
#3

GetAsyncKeyState tror jag det var.

nikoMedlem sedan juni 20022 599 inlägg
#4

OK. Isåf är en ganska enkel lösning att du i samband med GetAsyncKeyState kollar vilken applikation som har fokus:

Private Const MAX_PATH = 260
Private Declare Function GetForegroundWindow _
Lib "user32" () As Long
Private Declare Function GetWindowText _
Lib "user32" Alias "GetWindowTextA" _
(ByVal hwnd As Long, ByVal lpString As String, _
ByVal cch As Long) As Long

    'Nån timer-funktion.
    Dim lResult    As Long
    Dim sWndName   As String
    sWndName = Space$(MAX_PATH)
    lResult = GetWindowText(GetForegroundWindow(), sWndName, MAX_PATH)
    sWndName = Left$(sWndName, lResult)
    If InStr(UCase(sWndName), "MIRC") > 0 Then
        ' mIRC har fokus just nu.
    End If

Det finns bättre (men mycket krångligare) lösningar där man sätter en global keyboard-hook också.

EkströmMedlem sedan feb. 20022 594 inlägg
#5

Thx a lot, niko =) Ruggigt vad skillad man kan vara då.

135 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)