Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Läsa av tangetbordet

Postades av 2002-06-06 21:46:55 - Peter Larsson, i forum visual basic - allmänt, Tråden har 4 Kommentarer och lästs av 548 personer

Finns det någon funktion för att läsa av tangentbordet som inte kräver att fönstret är markerat?
Jag har provat med KeyHook men det funkade inte.

Tacksam för svar!


/ Peter Larsson


Svara

Sv: Läsa av tangetbordet

Postades av 2002-06-06 23:27:20 - Tomas Karlsson

Hej!

Är det tangentens keycode du är ute efter? i så fall kan du testa detta:

Option Explicit

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
Form1.Caption = "KeyCode = " & KeyCode & ", Shift=" & Shift
End Sub

//Tomas


Svara

Sv: Läsa av tangetbordet

Postades av 2002-06-07 09:58:52 - Björn Lindahl

Först en LowLevel hook fungerar endast med NT 4 och senare.
Lägger in hooken före message kön i windows. Fångar all text och skriver den till en textbox.

<code>
Option Explicit

Public Const HC_ACTION = 0
Public Const WM_KEYDOWN = &H100
Public Const WM_SYSKEYDOWN = &H104
Public Const WH_KEYBOARD_LL = 13

Public Type KBDLLHOOKSTRUCT
vkCode As Long
scanCode As Long
flags As Long
time As Long
dwExtraInfo As Long
End Type

Public Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (Destination As Any, Source As Any, ByVal Length As Long)
Public Declare Function SetWindowsHookEx Lib "user32" Alias "SetWindowsHookExA" (ByVal idHook As Long, ByVal lpfn As Long, ByVal hmod As Long, ByVal dwThreadId As Long) As Long
Public Declare Function CallNextHookEx Lib "user32" (ByVal hHook As Long, ByVal nCode As Long, ByVal wParam As Long, lParam As Any) As Long
Public Declare Function UnhookWindowsHookEx Lib "user32" (ByVal hHook As Long) As Long


Private isHooked As Boolean
Private hHook As Long
Private blnDoNothing As Boolean

Private keystruc As KBDLLHOOKSTRUCT

Public Sub SetKeyHook()

If isHooked Then
'Do nothing
Else
hHook = SetWindowsHookEx(WH_KEYBOARD_LL, AddressOf KeyboardProc, App.hInstance, 0)
End If
End Sub

Public Sub RemoveKeyHook()
Dim lngDummy As Long
lngDummy = UnhookWindowsHookEx(hHook)
isHooked = False
End Sub
Public Function KeyboardProc(ByVal uCode As Long, ByVal wParam As Long, ByVal lParam As Long) As Long

If (uCode = HC_ACTION) Then
If wParam = WM_KEYDOWN Or wParam = WM_SYSKEYDOWN Then
CopyMemory keystruc, ByVal lParam, Len(keystruc)
Form1.Text1.Text = Form1.Text1.Text & Chr(keystruc.vkCode)
End If
End If
KeyboardProc = CallNextHookEx(0, uCode, wParam, ByVal lParam)

End Function


</code>


Sedan en SystemWide hook ska fungera i 98, ej bekräftat hade bara XP att testa emot. Lägger in en hook efter message kön. Visar en MsgBox när 'W' skrivs.

<code>
Option Explicit

Public Const HC_ACTION = 0
Public Const WH_KEYBOARD = 2

Public Declare Function SetWindowsHookEx Lib "user32" Alias "SetWindowsHookExA" (ByVal idHook As Long, ByVal lpfn As Long, ByVal hmod As Long, ByVal dwThreadId As Long) As Long
Public Declare Function CallNextHookEx Lib "user32" (ByVal hHook As Long, ByVal nCode As Long, ByVal wParam As Long, lParam As Any) As Long
Public Declare Function UnhookWindowsHookEx Lib "user32" (ByVal hHook As Long) As Long

Private isHooked As Boolean
Private hHook As Long
Private blnDoNothing As Boolean

Public Sub SetKeyHook()
If isHooked Then
'Do nothing
Else
hHook = SetWindowsHookEx(WH_KEYBOARD, AddressOf KeyboardProc, 0, App.ThreadID)
End If
End Sub

Public Sub RemoveKeyHook()
Dim lngDummy As Long
lngDummy = UnhookWindowsHookEx(hHook)
isHooked = False
End Sub

Public Function KeyboardProc(ByVal uCode As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
If (uCode = HC_ACTION) Then
If Hex$(wParam) = "57" Then
MsgBox "Wohoo!"
End If
End If
KeyboardProc = CallNextHookEx(hHook, uCode, wParam, lParam)
End Function

</code>


Svara

Sv: Läsa av tangetbordet

Postades av 2002-06-14 10:22:40 - Mikael Bohlin

Kolla in min Keylogger under Tips&Tricks Api Keyboard, den använder GetAsyncKeystate, kan kolla tangentbordet oavsett vilket program som har fokus eller är aktiverat (och med MYCKET enklare kod än andra poster här).


Svara

Nyligen

  • 14:24 CBD regelbundet?
  • 14:23 CBD regelbundet?
  • 14:22 Har du märkt några verkliga fördel
  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 569 610
27 953
271 709
1 446
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies