Einzelnen Beitrag anzeigen

markbolten

Registriert seit: 5. Jun 2005
25 Beiträge
 
#1

Bewegung des Mausrades in einem externen Spiel auslösen

  Alt 9. Jun 2005, 08:41
Hi,
in kommerziellen Strategiespielen (Siedler 5,Kinder des Nils) ist das zoomen sehr
wichtig und wird durch das Mausrad bzw. einer Taste ausgeführt.

Aus gesundheitlichen Gründen ist meine Bewegungsfreiheit stark eingeschränkt, dadurch
kann ich weder eine Tastatur noch eine normale Maus nutzen. Den Computer bediene
ich durch eine Kopfsteuerung, 2 Mausbuttons und eine virtuelle Tastatur.

Ich will nun bei gleichzeitigen Drücken der 2 Buttons und vertikale Mausbewegung
eine Mausradbewegung auslösen. Um das zu erreichen habe ich eine MouseHook
geschrieben, in dieser wird die Message wm_mousewhell mittels Sendinput aufgerufen,
sobald das Ereignis - 2 Buttons + Mausbewegung - auftritt.
Dieses funktioniert in allen WindowsAnwendungen, nur nicht in Spielen.
Aus diversen Forenbeiträgen habe ich erfahren, das Spiele DirectxAnwendungen sind.

Wie kann ich eine wm_mousewhell Message in einer externen DirectxAnwendungen aufrufen bzw.
wie sende/übermittel ich eine wm_mousewhell Message an ein Spiel, um zoomen zu können ?

Eine Lösung bitte mit Beispielcode, da ich keine Erfahrung mit DirectxProgrammierung
habe (ich habe Directx 9.0c).

Anm.: Ist eine Lösung nur mit neueren Versionen von Delphi als Delphi7 möglich,
programmiert mir bitte eine lauffähige Dll.

cu
  Mit Zitat antworten Zitat