Ich bin mir gewohnt mit der mittleren Maustaste Winamp zu steuern (Play/Pause) doch für meine Maus hier gibt es leider keinen Windows 2000 Treiber und somit kann ich die mittlere Maustaste nicht konfigurieren.
Also möchte ich einen globalen Mouse-Hooker schreiben um alle Events der Maus abzufangen und eigene Funktionen dranzuhängen.
Nach kurzem googlen hab ich einen guten Post gefunden.
Leider hat der Autor die mittlere Maustaste vergessen… Also hab ich die Klasse selber angepasst und fange WM_MBUTTONDOWN nun auch ab.
Die angepasste Klasse findet ihr hier: UserActivityHook_Mod
Verwenden tut man das ganze z.B. so:
public partial class MainForm : Form { UserActivityHook hooker; public MainForm() { InitializeComponent(); hooker = new UserActivityHook(true, false); hooker.OnMouseActivity += new MouseEventHandler(hooker_OnMouseActivity); } void hooker_OnMouseActivity(object sender, MouseEventArgs e) { if (e.Button == MouseButtons.Middle) { Console.WriteLine("Middle Mouse Pressed"); } } }
WICHTIG:
Damit der Hook global im Debugger funktioniert musst noch folgendes Häckchen bei den Project Properties weggenommen werden: