MultiMedia-Tasten unter Windows ab w2k

Hier könnt Ihr gute, von Euch geschriebene Codes posten. Sie müssen auf jeden Fall funktionieren und sollten möglichst effizient, elegant und beispielhaft oder einfach nur cool sein.
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

MultiMedia-Tasten unter Windows ab w2k

Beitrag von ts-soft »

Bei der Suche nach Möglichkeiten zum abfragen der MM-Tasten, bin ich leider nur auf
"nicht bei jedem" funktionierenden Code gestoßen. Also MSDN gestöbert und gefunden.
Vielleicht kann es ja jemand brauchen:

Code: Alles auswählen

EnableExplicit

Enumeration
  #APPCOMMAND_VOLUME_MUTE = 8
  #APPCOMMAND_VOLUME_DOWN
  #APPCOMMAND_VOLUME_UP
  #APPCOMMAND_MEDIA_NEXTTRACK
  #APPCOMMAND_MEDIA_PREVIOUSTRACK
  #APPCOMMAND_MEDIA_STOP
  #APPCOMMAND_MEDIA_PLAY_PAUSE
  #APPCOMMAND_MEDIA_PLAY = 46
  #APPCOMMAND_MEDIA_PAUSE
  #APPCOMMAND_MEDIA_RECORD
  #APPCOMMAND_MEDIA_FAST_FORWARD
  #APPCOMMAND_MEDIA_REWIND
  #APPCOMMAND_MEDIA_CHANNEL_UP
  #APPCOMMAND_MEDIA_CHANNEL_DOWN 
EndEnumeration

Procedure WinCB(hWnd, uMsg, wParam, lParam)
  Protected Result = #PB_ProcessPureBasicEvents
  Protected text.s
  
  Select uMsg
    Case #WM_APPCOMMAND
      Select (lParam >> 16) & $FFFF
        Case #APPCOMMAND_VOLUME_MUTE
          text = "Volume_Mute"
        Case #APPCOMMAND_VOLUME_DOWN
          text = "Volume_Down"
        Case #APPCOMMAND_VOLUME_UP
          text = "Volume_Up"
        Case #APPCOMMAND_MEDIA_NEXTTRACK
          text = "Media_NextTrack"
        Case #APPCOMMAND_MEDIA_PREVIOUSTRACK
          text = "Media_PreviousTrack"
        Case #APPCOMMAND_MEDIA_STOP
          text = "Media_Stop"
        Case #APPCOMMAND_MEDIA_PLAY_PAUSE
          text = "Media_Play_Pause"
        Case #APPCOMMAND_MEDIA_RECORD
          text = "Media_Record"
        Case #APPCOMMAND_MEDIA_PLAY
          text = "Media_Play"
        Case #APPCOMMAND_MEDIA_FAST_FORWARD
          text = "Media_Fast_Forward"
        Case #APPCOMMAND_MEDIA_REWIND
          text = "Media_Rewind"
        Case #APPCOMMAND_MEDIA_CHANNEL_DOWN
          text = "Media_Channel_Down"
        Case #APPCOMMAND_MEDIA_CHANNEL_UP
          text = "Media_Channel_Up"
      EndSelect
      Debug text
      ProcedureReturn #True; ansonsten geht die Message weiter und weitere Player reagieren ;)
  EndSelect
  ProcedureReturn Result
EndProcedure

OpenWindow(0, #PB_Ignore, #PB_Ignore, 640, 480, "")
SetWindowCallback(@WinCB())
Repeat
  Select WaitWindowEvent()
    Case #PB_Event_CloseWindow : Break
  EndSelect
ForEver
PS: Browse-Tasten sind hier nicht bei, dafür bitte in der MSDN nachschlagen:
http://msdn.microsoft.com/en-us/library ... 85%29.aspx
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
c4s
Beiträge: 1235
Registriert: 19.09.2007 22:18

Re: MultiMedia-Tasten unter Windows ab w2k

Beitrag von c4s »

Eigentlich eine feine Sache, aber bei mir funktioniert es nicht.
Liegt wohl daran, dass ich immer ein extra Programm laufen lassen muss, mit dem man die Aktionen konfigurieren kann?! Auf jeden Fall kommt #WM_APPCOMMAND nicht an.

Scheinbar habe ich gar keine richtigen Multimedia-Tasten...
"Menschenskinder, das Niveau dieses Forums singt schon wieder!" — GronkhLP ||| "ich hogffe ihr könnt den fehle endecken" — Marvin133 ||| "Ideoten gibts ..." — computerfreak ||| "Jup, danke. Gruss" — funkheld
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Re: MultiMedia-Tasten unter Windows ab w2k

Beitrag von ts-soft »

Geht bei mir mit Tastatur und Fernbedienung, wobei ich aber auch nicht alle Tasten habe,
auf der Tastatur sind es nur 5.
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
bobobo
jaAdmin
Beiträge: 3873
Registriert: 13.09.2004 17:48
Kontaktdaten:

Re: MultiMedia-Tasten unter Windows ab w2k

Beitrag von bobobo »

btw. Ich hab sie auch nicht mehr alle :)
‮pb aktuel 6.2 windoof aktuell und sowas von 10
Ich hab Tinnitus im Auge. Ich seh nur Pfeifen.
hth
Beiträge: 76
Registriert: 08.10.2004 22:47

Re: MultiMedia-Tasten unter Windows ab w2k

Beitrag von hth »

Super, ich suche aber einen analogen Code für den Screen.

Auf eine Anfrage im englischen Forum gibt es noch keine mit meiner Tastatur funktionierende Lösung.
http://www.purebasic.fr/english/viewtop ... 16&t=49123

hth
Antworten