vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
vb@rchiv Offline-Reader - exklusiv auf der vb@rchiv CD Vol.4  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Fortgeschrittene
Keyboard-Hook im Compact Framework 
Autor: poncho
Datum: 20.07.09 12:46

Hallo Leute,

ich versuche einen Keyboard-Hook zu installieren um die Lautstärke-Tasten des Smartphones abzufangen. So wie ich es schon auf dem Desktopsystem gemacht habe, funktioniert es im Compact Framework auf dem Smartphone leider nicht. Ich habe dann diese Lösung gebaut, die eigentlich funktionieren sollte aber es geht leider nicht:

Imports System.Runtime.InteropServices
 
Public Delegate Function HookCallback(ByVal nCode As Integer, ByVal wParam As _
  IntPtr, ByVal lParam As intptr) As Integer
 
Public Class Form1
 
    <MarshalAs(UnmanagedType.FunctionPtr)> _
    Private callbackKeyboard As HookCallback
    Private Shared hHookKeyboard As Integer = 0
 
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As _
      System.EventArgs) Handles MyBase.Load
        If hHookKeyboard.Equals(0) Then
            callbackKeyboard = New HookCallback(AddressOf KeyboardHookProc)
            hHookKeyboard = WinApi.SetWindowsHookEx(WinApi.WH_KEYBOARD_LL, _
              callbackKeyboard, WinApi.GetModuleHandle(Nothing), 0)
            If hHookKeyboard.Equals(0) Then
                MessageBox.Show("Keyboard Hook Failed:" & vbCrLf & _
                  hHookKeyboard.ToString() & vbCrLf & Marshal.GetLastWin32Error( _
                  ), "Error", MessageBoxButtons.OK, MessageBoxIcon.Exclamation, _
                  MessageBoxDefaultButton.Button1)
            End If
        End If
    End Sub
 
End Class
 
'API Functions
 
Public Class WinApi
    Public Const WH_KEYBOARD_LL As Integer = 13
 
    Public Structure KBDLLHOOKSTRUCT
        Public vkCode As Integer
        Public scanCode As Integer
        Public flags As Integer
        Public time As Integer
        Public dwExtraInfo As Integer
    End Structure
 
    <DllImport("coredll.dll")> _
    Public Shared Function SetWindowsHookEx( _
        ByVal idHook As Integer, ByVal HookProc As HookCallback, _
        ByVal hInstance As IntPtr, ByVal wParam As Integer) As Integer
    End Function
 
    <DllImport("coredll.dll")> _
    Public Shared Function GetModuleHandle(ByVal mod2 As String) As IntPtr
    End Function
 
    <DllImport("coredll.dll")> _
    Public Shared Function CallNextHookEx( _
        ByVal idHook As Integer, ByVal nCode As Integer, _
        ByVal wParam As IntPtr, ByVal lParam As IntPtr) As Integer
    End Function
 
End Class
Der original Code stamm hier her:
http://web.archive.org/web/20080208220906/http://blog.opennetcf.org/ayakhnin/PermaLink,guid,84b95802-76d7-499c-b266-e2251ab15706.aspx

Ich weiß, hier sind eher die Desktop-Programmier zu finden aber vielleicht hat sich ja auch schon jemand mit der "mobilen" Programmieren beschäftigt und weiß Rat.

Beitrag wurde zuletzt am 20.07.09 um 12:48:58 editiert.
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Keyboard-Hook im Compact Framework1.872poncho20.07.09 12:46

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel