Jump to content

DVBViewer soll APPCOMMANDS können


craig_s

Recommended Posts

Du hast kein Problem beim Beenden des DVBV? Ist zwar inzwischen gefixt aber in der Dir vorliegenden Version gabs auch bei mir Probleme.

Zweitens, die Theorie wonach der Shell Hook auch nicht fokusierte Apps umfasst geht bei mir nicht immmer auf. Suche noch.

Meinst du beenden über FB? Mach ich nie. Ich guck eigentlich gar kein fern.. Werde es aber jetzt im Auge behalten.

 

Auf die Anzahl der gesendete Events hat das Plugin keinen Enfluss, es fängt nur die APPCOMMANDS heraus. Wenn zusätzlich noch VK's gesendet werden .... 
Die Anzeige "Multimedia Keys" als zuständiges Inputplugin heist, dass bei  MEDIA_PREVIOUSTRACK das APPCOMMAND: APPCOMMAND_MEDIA_PREVIOUSTRACK emfangen wurde, habs nur abgekürzt. Woher das MEDIA_PREV_TRACK kommt? Keine Ahnung. Steht da wirklich "Multimedia Keys" als Pluginkennung?

 

Hast mich falsch verstanden, *Multimedia keys* wird natürlich nicht angezeigt. Nur das: MEDIA_PREVIOUSTRACK.

Und sorry, dass ich MEDIA_PREV_TRACK geschrieben habe. Kommt davon wenn man zuviel gleichzeitig abarbeitet.

 

 

Ich spekuliere mal: Der zuständige Treiber testet ab, ob APPCOMMAND behandelt wird (in diesem Falle indem er beides sendet). Wenn er festgestellt hat, dass APPCOMMAND benandelt wird, sendet er fortan nur noch diese Events.

hmmm, trotzdem lernt DVBV immer weiter meine VK-Keys.

Ist so zu verstehen: Ich quäle *Multimedia keys* + DVBV (und TSPlayer), die ja auf AppCommands warten in diesem Versuch absichtlich mit aufeinanderfolgenden VK Commands um rauszufinden was los ist. Das mache ich mit einer extra Fernbedienung, deren sehr simpel gestrickte Software explizit nur VK-Keys beherrscht. Zur Verifizierung kann ich VK-Keys auch mit einigen Multimediatasten erzeugen.

Und siehe da, die zum Media bereich gehörenden VK-Keys werden immer gehört:

 

VK_VOLUME_MUTE 173

VK_VOLUME_DOWN 174

VK_VOLUME_UP 175

VK_MEDIA_NEXT_TRACK 176

VK_MEDIA_PREV_TRACK 177

VK_MEDIA_STOP 178

VK_MEDIA_PLAY_PAUSE 179

 

Deswegen meine Vermutung das wenn ich diese VK Keys schicke auch gleichzeitig die entsprechenden APPCOMMANDs aktiviert werden, sonst würden ja *Multimedia keys* und TSPlayer nichts hören?

Einen deutlichen Unterschied kann ich nur bei den VOLUME Befehlen definieren:

APPCOMMAND_VOLUME wird immer von der Systmlautstärkeregelung abgefangen und erreicht *Multimedia keys*, TSPlayer und MPC-HC nie.

VK_VOLUME ist oft Focusabhängig und bedient die Regler in den einzelnen Anwendungen (zB. *Multimedia keys*, TSPlayer und MPC-HC).

Ausser die Anwendungen sind absichtlich so programmiert das sie komplett mit der Systemlautstärke sychronisiert sind (Arcade, TMT3).

 

APPCOMMAND_VOLUME_MUTE

APPCOMMAND_VOLUME_DOWN

APPCOMMAND_VOLUME_UP

APPCOMMAND_MEDIA_NEXTTRACK

APPCOMMAND_MEDIA_PREVIOUSTRACK

APPCOMMAND_MEDIA_STOP

APPCOMMAND_MEDIA_PLAY_PAUSE

Edited by craig_s
Link to comment
  • Replies 113
  • Created
  • Last Reply

Top Posters In This Topic

  • craig_s

    46

  • erwin

    37

  • Griga

    9

  • SnoopyDog

    5

Meinst du beenden über FB? Mach ich nie. Ich guck eigentlich gar kein fern.. Werde es aber jetzt im Auge behalten.

Nein. Beenden des DVBV generell. Hab ich aber inzwischen gefixt. Benutze bitte die neue Version weiter oben.

Die sollte nun auch kein Fokusproblem mehr haben.

 

hmmm, trotzdem lernt DVBV immer weiter meine VK-Keys.

Auf die evt. Abhängigkeit des Verhaltens (Senden von VK_ * + WM_APPCOMMAND oder nur eines von beiden) vom zuständigen Treiber hab ich ja schon hingewiesen.

 

Das mache ich mit einer extra Fernbedienung, deren Software explizit nur VK-Keys beherrscht.

...

Deswegen meine Vermutung das wenn ich diese VK Keys schicke auch gleichzeitig die entsprechenden APPCOMMANDs aktiviert werden, sonst würden ja *Multimedia keys* und TSPlayer nichts hören?

Woher weist Du dass sie nur VK_* schickt? Das was Du beschreibst deutet doch eher darauf hin dass si beides sendet.

 

Einen deutlichen Unterschied kann ich nur bei den VOLUME Befehlen definieren:

APPCOMMAND_VOLUME wird immer von der Systmlautstärkeregelung abgefangen und erreicht *Multimedia keys*, TSPlayer und MPC-HC nie.

Also bei mir kommt das schon bis zum DVBV (mit neuer Version?)

 

erwin

Link to comment
Nein. Beenden des DVBV generell. Hab ich aber inzwischen gefixt. Benutze bitte die neue Version weiter oben.

Die sollte nun auch kein Fokusproblem mehr haben.

Ich hätt ja so gern eure Probleme :) Hab DVBV mit der alten Vers. wegen versch. Tests mind. 40 mal auf und zu gemacht - kein Problem (Win7 64 Bit).

Auch kein Focusproblem.

 

Woher weist Du dass sie nur VK_* schickt? Das was Du beschreibst deutet doch eher darauf hin dass si beides sendet.

Bei den VOLUME Funktionen ist der Unterschied zw. AppCommand und VK eindeutig. Würde beides geschickt würde die Systemlautstärke immer mit anspringen.

 

Also bei mir kommt das schon bis zum DVBV (mit neuer Version?)

Das mit Systmlautstärkeregelung fängt alle APPCOMMAND_VOLUME_xxx ab ist natürlich treiberabhängig. Kann auf anderen Systemen ganz anders aussehen.

 

Multimedia keys + DVBV erzeugt jetzt keine doppelten Einträge mehr. Ich freu mich jetzt aber nicht darüber sonst krieg ich wieder eins aufn Deckel ihr Kühlschrankmonster!

Link to comment
Also bei mir kommt das schon bis zum DVBV (mit neuer Version?)

Woher weisst du dass dein "das" nur AppCommand schickt und nicht auch VK?

Link to comment
Ich hätt ja so gern eure Probleme o:)

OK. Zwei Wünsche hast Du noch frei. :)

 

Das mit Systmlautstärkeregelung fängt alle APPCOMMAND_VOLUME_xxx ab ist natürlich treiberabhängig. Kann auf anderen Systemen ganz anders aussehen.

Diese verschiedenen Verhaltensweisen bei verschiedenen Devices/Driver sollten wir im Auge behalten.

Was hast Du denn für eine Konstellation? Wenn ein gemeinsames Muster erkennbar ist, kann ich ja vielleicht schon im Plugin filtern.

 

Multimedia keys + DVBV erzeugt jetzt keine doppelten Einträge mehr. Ich freu mich jetzt aber nicht darüber sonst krieg ich wieder eins aufn Deckel ihr Kühlschrankmonster!

Kein *freu*. Merkwürdig ;)

 

Diese Doppeleinträge sind jetzt bei mir auch verschwunden. Ich hab das zunächst auf den Bugfix zum Beenden geschoben. Dieser Bug hat da einiges durcheinander gebracht, vielleicht auch den Return-Wert verfälscht so dass das APPCOMMAND fälschlicherweise als *nicht behandelt* erkannt wurde. Allerdings bei so ca 30 Anlernversuchen 1 mal war dann doch wieder ein Doppeleintrag.

 

Woher weisst du dass dein "das" nur AppCommand schickt und nicht auch VK?

Mit das meine ich das APPCOMMAND selbst. Es kommt über das InputPlugin beim DVBV an. Überdies kann ich durch debugging auf der Basis des Quelltextes den Weg der APPCOMMANDS verfolgen, wenn denn welche generiert wurden. VK's denke ich würde ich im Anlerndialog als "Keyboard"-Ereignis sehen.

 

PS: Ein kleiner Bug war auch in dieser Version noch drin (wenn der DVBV nicht den Focus hat wird zwar durch das Plugin reagiert, jedoch immer nur mit dem letzten Ereignis wo der DVBV noch den Focus hatte). Ist gedanklich schon gefixt, eine Zeile falsch plaziert. Schau heut Abend nochmal für eine finale Version rein.

 

erwin

Edited by erwin
Link to comment

Konstellation:

Acer Aspire 8942G, Win7 64Bit.

 

Audiocontroller:

Realtek Hi Definition Audio

 

Eingabegeräte:

Microsoft eHome-Infrarottransceiver

Winbond CIR Transceiver

 

Tastaturen:

Launch Manager

Microsoft eHome MCIR 109-Tastatur

Microsoft eHome-Fernsteuerungstasten

 

FB: Acer RC804V-B (RC 6), mit den üblichen Tasten, ähnlich MCE

 

Der (Dritek) Launch Manager steuert die touchsensitiven Multimediatasten sowie einige andere rund ums Haupt-Keyboard.

 

Mit das meine ich das APPCOMMAND selbst. Es kommt über das InputPlugin beim DVBV an. Überdies kann ich durch debugging auf der Basis des Quelltextes den Weg der APPCOMMANDS verfolgen, wenn denn welche generiert wurden. VK's denke ich würde ich im Anlerndialog als "Keyboard"-Ereignis sehen.

Glaub ich nicht, "Keyboard"-Ereignisse im VK-Format chXXX werden jetzt ja nur noch empfangen oder so angezeigt, wenn dein Plugin ausgeschaltet ist. Du müsstest irgendwie einen reinen VK Befehl schicken können, am besten einen der VK_VOLUME um das selbst mal zu sehen.

 

Und in der Anleitung zu deinem Plugin sollte stehen: 'wenn Virtual-Keys (Keyboard - chXXX) schon eingelernt wurden, bevor das Multimedia Keys Plugin installiert wurde bitte darauf achten, dass es sich nicht um den gleichen Button auf Multimediatastatur oder FB handelt, sonst wird dieser doppelt ausgeführt.'

Dabei müsste die Virtual-Key Liste sein, damit die Leute die chXXX Nummern zuordnen können. Da gibs ja auch noch Browsertasten, E-Mail uvam. Viele wird das allerdings nicht betreffen, weil ich hier noch nie gesehen habe, dass überhaupt jemand weiss, dass Multimediatasten schon ohne jedes Plugin gehen, wenn VK gesendet wird.

 

Oder DVBV wird so hingetrimmt, dass er die VK Events mit dem Namen bezeichnet, statt wie jetzt nur mit der Key-Nummer.

 

 

PS: Ein kleiner Bug war auch in dieser Version noch drin (wenn der DVBV nicht den Focus hat wird zwar durch das Plugin reagiert, jedoch immer nur mit dem letzten Ereignis wo der DVBV noch den Focus hatte). Ist gedanklich schon gefixt, eine Zeile falsch plaziert. Schau heut Abend nochmal für eine finale Version rein.

Kann ich hier nicht nachvollziehen. Wenn DVBV nicht mehr oben ist macht der garnichts mehr..

Edited by craig_s
Link to comment

Also meine Spekulation dass evt die Treiber entscheiden ob VK's gesendet werden oder nicht nehme ich erstmal wieder zurück. Meine Ergebnisse beobachtet mit Spy++.

 

Beim Betätigen einer MM-Taste erreicht das DVBV-Hauptfenster sowohl eine WM_APPCOMMAND-Message als auch WM_KEYDOWN/WM_KEYUP mit dem entsprechenden VK_*. Das Anlernfenster erreicht jedoch nur das WM_APPCOMMAND. Hier wird dieses APPCOMMAND in ein VK-Ereignis transformiert und es erscheint chrXXX, so ähnlich wie es jetzt auch Griga im TSPlayer eingebaut hat. Die Frage ist ob die WM_KEYDOWN/WM_KEYUP gar nicht von außen reinkommen sondern im DVBV generiert werden. Denn dann wäre die Logik:

 

Anlernen: WM_APPCOMAND kommt rein -> Transformation zu VK_* + "Verknüfung chrXXX mit Aktion".

Betrieb: WM_APPCOMAND kommt rein (kein VK_*) -> Generierung WM_KEYDOWN chrXXX -> die "Verknüfung chrXXX mit Aktion" wird wirksam.

 

Ist jetzt das InputPlugin aktiv werden jedoch diese WM_APPCOMMAND's *weggefangen* und über einen anderen Kanal (die Input-Callbackfunktion) eingesteuert. Das seltsame Verhalten liegt also in der DVBV-Logik begründet.

 

ACHTUNG SPEKULATION! SORRY LARS!

Ich muss nochmal auf das *wegfangen* eingehen. Also die DVBV-Anlern-Windowprozedur empfängt WM_APPCOMMAND (kein VK_*) und leitet die Behandlung ein - Transformation in VK_*. (wird hier ein Thread gestartet?). Dann wird die DVBV-Anlern-Windowprozedur mit einem Return-Wert verlassen der dem Systemhook signalisiert dass die Message WM_APPCOMMAND nicht behandelt wurde. So muss ich es jedenfalls annehmen da sonst eigentlich der Hook gar nicht aktiv werden dürfte. Wird er aber und ruft die Input-Callbackfunktion auf. Passieren jetzt hier zwei Dinge gleichzeitig (evt. im gleichen nicht wiedereintrittfähigem Thread)? Jedenfalls ist dann manchma das generierte VK alias chrXXX verschwunden (oder wird gar nicht erst generiert), manchmal nicht. Beim Anlernen hab ich gestern sogar geschafft 2 (!!) x MEDIA_NEXTTRACK auf die gleiche Aktion zu legen obwohl eigentlich der DVBV sowas durch einen JA/Nein Dialog abblockt.

 

Wenn obiges so ungefähr zutrifft ergäben sich Schlussfolgerungen:

 

- wenn der DVBV nicht den Fokus hat sollten Doppelanlernungen (chrXXX + APPCOMMAND) kein Problem darstellen. Es kommt ja beim DVBV nur der Aufruf der Input-Callbackfunktion (wenn überhaupt) an.

 

- wenn der DVBV den Fokus hat wäre zu überlegen hier das WM_APPCOMMAND im Plugin wirklich *wegzufangen*

 

erwin

Link to comment

Der TSPlayer 2.3.0 ist jetzt verfügbar:

 

http://www.DVBViewer.info/forum/index.php?showtopic=13974

 

Inoffiziell (erst mal als "Proof of Concept" und für Testzwecke) unterstützt er die folgende AppCommands:

 

APPCOMMAND_HELP (Hilfedatei öffnen, falls vorhanden)

APPCOMMAND_VOLUME_DOWN

APPCOMMAND_VOLUME_UP

APPCOMMAND_VOLUME_MUTE

APPCOMMAND_MEDIA_STOP

APPCOMMAND_MEDIA_PLAY_PAUSE

APPCOMMAND_MEDIA_PLAY

APPCOMMAND_MEDIA_PAUSE

APPCOMMAND_MEDIA_RECORD (Konvertierung starten)

APPCOMMAND_MEDIA_REWIND (10 Sekunden zurück)

APPCOMMAND_MEDIA_FAST_FORWARD (10 Sekunden vorwärts)

APPCOMMAND_MEDIA_PREVIOUSTRACK (60 Sekunden zurück)

APPCOMMAND_MEDIA_NEXTTRACK (60 Sekunden vorwärts)

 

Spulen (Suchen mit Bildwiedergabe) im Play-Modus funktioniert mit den letzten vier Kommandos wie schon gesagt nicht korrekt, da die automatische Umschaltung auf Pause und zurück auf Play mangels KEYUP- bzw. BUTTONUP-Message nicht möglich ist. Der TSPlayer bleibt deshalb im Play-Modus.

Link to comment
Also meine Spekulation dass evt die Treiber entscheiden ob VK's gesendet werden oder nicht nehme ich erstmal wieder zurück. Meine Ergebnisse beobachtet mit Spy++.

 

Beim Betätigen einer MM-Taste erreicht das DVBV-Hauptfenster sowohl eine WM_APPCOMMAND-Message als auch WM_KEYDOWN/WM_KEYUP mit dem entsprechenden VK_*. Das Anlernfenster erreicht jedoch nur das WM_APPCOMMAND. Hier wird dieses APPCOMMAND in ein VK-Ereignis transformiert und es erscheint chrXXX, so ähnlich wie es jetzt auch Griga im TSPlayer eingebaut hat. Die Frage ist ob die WM_KEYDOWN/WM_KEYUP gar nicht von außen reinkommen sondern im DVBV generiert werden. Denn dann wäre die Logik:

 

Anlernen: WM_APPCOMAND kommt rein -> Transformation zu VK_* + "Verknüfung chrXXX mit Aktion".

Betrieb: WM_APPCOMAND kommt rein (kein VK_*) -> Generierung WM_KEYDOWN chrXXX -> die "Verknüfung chrXXX mit Aktion" wird wirksam.

 

Ist jetzt das InputPlugin aktiv werden jedoch diese WM_APPCOMMAND's *weggefangen* und über einen anderen Kanal (die Input-Callbackfunktion) eingesteuert. Das seltsame Verhalten liegt also in der DVBV-Logik begründet.

Zu deinen Spekulationen hätt ich noch paar *knallharte Fakten* zuzufügen. :)

 

Habe gestern noch kurz rumprobiert und in die VK FB allerlei vegruxte VK-Keys zum Senden reingeschrieben, bei denen ich kaum glaube, dass es dafür APPCOMMAND Entsprechungen gibt:

zB. VK_HANGUL - 21, undefined - 22, reserved 185, (186 ist übrigens Keyboard - Ü).

 

Die lernt DVBV (egal ob MultimediaKeys Plugin an oder aus -> das hört also diese VK's nicht) brav als Keyboard - ch21, ch22, ch185 und führt die eingelernten Tasten dann auch einwandfrei aus.

>>Das Anlernfenster erreicht jedoch nur das WM_APPCOMMAND.<<

kann also so nicht stimmen.

Edited by craig_s
Link to comment
>>Das Anlernfenster erreicht jedoch nur das WM_APPCOMMAND.<<

kann also so nicht stimmen.

craig_s Du hast mich missverstanden. Ich formuliere das noch mal anders. Wenn ich eine *normale* MM-Taste drücke und beobachte was bei den Fenstern ankommt so habe ich

 

Hauptfenster: WM_KEYDOWN/WM_KEYUP (VK_*) UND WM_APPCOMMAND

Anlernfenster: NUR WM_APPCOMMAND

 

Wie das erklären?

1. Hauptfenster (Parent) filtert WM_KEYDOWN/WM_KEYUP heraus

oder

2. Es kommt gar kein WM_KEYDOWN/WM_KEYUP von *aussen* also vom Tastatur/FB-Treiber herein - existiert also gar nicht - sondern wird vom DVBV aus den oben genannten Gründen (die Anlernung von APPCOMMANDS erfolgte ja über die Umwandlung zu VK's) generiert. Das Ergebnis des Anlernens (ohne Plugin) von APPCOMMANDs ist eine Zordnung VK <-> Action und nicht APPCOMMAND<->Action und deshalb muss zwangsläufig ein eingehendes APPCOMMAND durch ein entsprechendes VK repräsentiert werden (und da es nicht für jedes APPCOMMAND ein entsprechendes VK gibt, muss DVBV dieses ignorieren und du hast den Grund für die Existenz diese Threads :) ).

 

Ich hab mich für Variante 2 entschieden.

 

Ob nun wie von Dir beschrieben ein Gerät für Key-Ereignisse für das keine APPCOMMAND-Entsprechungen existieren VK's aussendet und diese dann wirklich von *aussen* in den DVBV reinkommen und folglich auch im Anlernfenster als VK's erkannt werden ist eine andere Frage.

 

erwin

 

EDIT: Ich hab mal Notepad als Target gewält.

Nur WM_APPCOMMAND kein WM_KEYDOWN/WM_KEYUP.

Edited by erwin
Link to comment
(Win7 64 Bit).

Auch kein Focusproblem.

Der Theorie nach müsste ein Fokusproblem bestehen wenn der 32-Bit DVBViewer durch ein natives 64-Bit Programm überdeckt wird.

 

SetWindowsHookEx can be used to inject a DLL into another process. A 32-bit DLL cannot be injected into a 64-bit process, and a 64-bit DLL cannot be injected into a 32-bit process. If an application requires the use of hooks in other processes, it is required that a 32-bit application call SetWindowsHookEx to inject a 32-bit DLL into 32-bit processes, and a 64-bit application call SetWindowsHookEx to inject a 64-bit DLL into 64-bit processes. The 32-bit and 64-bit DLLs must have different names.

Das Plugin selbst ist nur 32-bittig. Wenn Du also doch noch gravierende Bedienprobleme feststellst, melde dich nochmal. Mal sehen was sich machen lässt.

erwin

Link to comment

erwin, leider ist es so das ich ich dich nicht missverstanden habe, sondern ich verstehe fast gar nichts und das ärgert mich. Wie ich schon ganz oben erklärte kann ich bis auf ein paar Hausmannskostgriffe überhaupt kein Skript ö.ä. und bei Hook denk ich an Peter Pan..

 

Bedenklich stimmt mich auch, dass du mit deinem eigenen Plugin derart unzufrieden zu sein scheinst, dass du sogar den ganzen Thread in Frage stellst, obwohl es doch schon in der 1. Vers. bis auf rel. harmlose doppelte Einträge alles gelöst hatte, und in der 2. Vers sind die auch noch weg und jede FB oder jeder Multimediabutton auf Maus oder Keyboard, der APPCOMMANDS schickt ist nun einlernbar.

 

Dabei ist es sogar egal, ob der APPCOMMAND "klassisch" von einem MS Treiber verarbeitet wird oder, wie heutzutage öfter, über eine Drittsoftware wie Launch Manager, wie meine Konfig zeigt. Auch über die Zukunft des Plugins braucht man sich nicht zuviel Sorgen zu machen, da sich am uralten WM_APPCOMMAND wohl kaum noch was ändern wird, um so erstaunlicher, dass diese Befehlsstruktur in PCs und Notebooks neuester Bauart ungebrochen und umfangreich zum Einsatz kommt.

 

Schade finde ich auch, das die Geschichte bei Lars auf so wenig Interesse stösst, ich kann nur vermuten, dass er keine Multimediatastatur hat oder eine, die nur VK sendet (was ja auch ohne Plugin funktioniert hat) oder am warscheinlichsten: er hasst Multimediabuttons, weil es die früher, als er gelernt hat, nicht gab. :-) Das kann ich sogar verstehen, bin auch schon lange dabei... Lars, hat deine Tastatur wenigstens schon eine WinTaste? Die hat so ein dickes geschwungenes Viereck drauf und ist links unten.

 

Heutzutage werden aber massenweise Multimedia-PCs und Multimedia-Notebooks schon ab Werk mit diesen Buttons und Fernbedienungen ausgeliefert und kann man es den Leuten verübeln, dass wenn sie auf REC drücken hoffen, dass was passiert?

 

 

Der Theorie nach müsste ein Fokusproblem bestehen wenn der 32-Bit DVBViewer durch ein natives 64-Bit Programm überdeckt wird.

Ist Explorer ein natives 64-Bit Programm? Wenn ich ein Explorer-Fenster nach oben klicke geht im DVBV nichts mehr, auch nicht der letzte oder vorletzte AppCommand. Evl. ist es nicht so einfach ein natives 64-Bit Programm zu finden, weil Win7 (64 Bit) in großen Teilen 32 & 64 Bit parralel ablaufen lässt, auch in der Registry (Wow6432Node).

 

Das Plugin selbst ist nur 32-bittig. Wenn Du also doch noch gravierende Bedienprobleme feststellst, melde dich nochmal. Mal sehen was sich machen lässt.

Bin wie gesagt kein Dauerfernseher aber in der Experimentierphase teste ich dafür exzessiv. Die schon Eingangs erwähnten "reinen" APPCOMMANDs:

 

APPCOMMAND_MEDIA_CHANNEL_UP

APPCOMMAND_MEDIA_CHANNEL_DOWN

APPCOMMAND_MEDIA_RECORD

APPCOMMAND_MEDIA_FASTFORWARD

APPCOMMAND_MEDIA_REWIND

APPCOMMAND_MEDIA_PAUSE

APPCOMMAND_MEDIA_PLAY

 

funktionieren 1a und ohne wenn und aber, nach "Einlernen" in DVBV mit deinem MultimediaKeys Plugin. - Die:

 

APPCOMMAND_VOLUME_MUTE

APPCOMMAND_VOLUME_DOWN

APPCOMMAND_VOLUME_UP

 

werden vom Launch Manager an den Realtek Audio Manager (Systemlautstärke) geschickt und sonst nirgendwo hin. Kann ich dadurch beweisen, wenn ich Launch Manager's cnf so bearbeite, dass die APPCOMMAND_VOLUME_xxx auskommentiert werden können, gibt es nur noch VK Commands, d.h. sie funktionieren in jeder Anwendung. Es gibt auch keine Launch Manager-OSD-Einblendung mehr.

 

APPCOMMAND_MEDIA_PLAY_PAUSE

APPCOMMAND_MEDIA_NEXTTRACK

APPCOMMAND_MEDIA_PREVIOUSTRACK

 

auch hier kann ich durch besagte Auskommentierung frei entscheiden, ob sie als APPCOMMAND oder VK gesendet werden. Für DVBV hatte ich mich VOR Existenz von deinem Plugin natürlich für Auskommentierung entschieden damit sie einlernbar waren.

 

Durch Bearbeiten der Launch Manager cnf und Hinzufügen einiger Registry Einträge kann ich alle Multimediatasten (Recovery, Bluetooth, WLan, Battery, Multimedia-Transport, WMC u.a. auf jede von mir gewünschte Anwendung/Funktion umleiten, aber das ist eine andere Geschichte..

Edited by craig_s
Link to comment
und bei Hook denk ich an Peter Pan..

 

:)

 

Ein Hook ist ein Mechanismus, mit dem sich ein Programm ins System "einhakt", um Events / Messages mitzubekommen, bevor sie auf normalem Wege Anwendungen erreichen. Eine "oberflächliche" Variante der Rootkit-Technik, sehr beliebt bei Keyloggern, und es ist denkbar, dass aus diesem Grund die eine oder andere Virenscanner-Heuristik Erwins Plugin misstrauisch beäugt. Siehe dazu auch hier.

Link to comment

Tja erwin, und nun habe auch ich endlich das gefunden wovon du sprichst. Es hatte sich aber sehr gut versteckt. Hatte mich die ganze Zeit auf die Fernbedienungen konzentriert, bei denen es keinerlei Focus oder sonstige Probs gibt. Nun habe ich mir aber nochmal die Multimediabuttons auf dem Keyboard zur Brust genommen, da schien auch alles normal, bis ich die Software von der PS3 Bluetooth FB (die nur VK sendet) beendet habe.

 

Und jetzt endlich drücke ich auf dem Keyboard auf PLAY_PAUSE und das Video läuft weiter, verdammt. Auf der Acer FB Pause gedrückt, Video pausiert, auf dem Keyboard auf PLAY_PAUSE und das Video zuckt kurz los und gleich wieder Pause.

Explorer Fenster nach oben geholt, DVBV reagiert immernoch, aber nur wenn ich die Multimediatasten auf dem Keyboard drücke, FWD, RWD, PLAY_PAUSE, Stop, PREVIOUSTRACK, NEXTTRACK, egal. Verdammt!

 

Na immerhin kann ich jetzt mitreden. Die Acer FB und die Keyboard Multimediatasten bedienen unterschiedliche Treiber.

Kein anderer Player, auch nicht der TSPlayer zeigen dieses Verhalten.

 

Im DVBV auf Einlernen gegangen, hier sieht man was los ist. Wenn ich bei aktivem Multimedia-Keys Plugin eine der o.g. Tasten auf dem Keyboard drücke gehen 3 Fenster auf, die die gleiche Funktion einlernen wollen. Dementsprechend starten die Keyboard Buttons beim Abspielen die Funktionen mehrfach hintereinander, es kommt mir aber so vor als wäre es nur 2x. Deswegen gleich wieder Pause bei PLAY_PAUSE. Bei FWD, RWD sagt die Einblendung immer 30sec. statt 10sec. PREVIOUSTRACK, NEXTTRACK springen selten auch doppelt.

 

Phänomenal: wenn die Mini-Software von der PS3 Bluetooth FB nebenbei gestartet ist (Bluetooth Treiber kann sogar aus sein) erhöht sich alles auf 3x: bei PLAY_PAUSE wird jetzt wie gewünscht pausiert und gestartet und bei FWD, RWD sagt die OSD-Einblendung jetzt 1min.

 

Ich habe zwar ne "einfache" Möglichkeit das zu unterbinden - durch Auskommentieren der Buttons im Launch Manager, dann kommen sie nur noch per VK (s.o.), nicht mehr doppelt und dreifach, aber das geht nicht für FWD, RWD (reines Appcommand, da geht nur alles oder nichts) und ist auch nicht so für Jedermann..

 

 

Jetzt sei nicht zu enttäuscht, weil die wichtigste Sache läuft immernoch 1a super: die Acer FB hat durch dein Plugin Appcommand gelernt und kommuniziert darüber mit DVBV ohne jegliches doppelt und dreifach und Focus ist sofort weg, wenn Explorer oben!

Irgendwie müsste man den Treiber für die Keyboard-Buttons beeinflussen, hab schon allerlei versucht (erfolglos), oder du schaffs noch was mit dem Plugin.

 

Wenn ich dir IRGENDWAS helfen kann, probieren soll, sag bescheid!

 

Hier noch ne spannende Seite über Key-Zuordnungen wo auch endlich die komplette Liste der Appcommand IDs für die Registry und die Keyboard Scancodes dabei sind, die ich schon lange gesucht habe.

 

Wünsche viel Erfolg, Craig

Edited by craig_s
Link to comment

Weitere Beobachtungen mit Multimediatasten auf dem Keyboard

 

Weil die Software von der PS3 Bluetooth FB alle Tastendrücke erhöht (s.o. von 2x auf 3x) habe ich das noch mit anderen Softs probiert.

 

uuSpy (ähnlich Spy++) erhöht auch von 2x auf 3x. Sind beide gestartet haben wir 4x (FWD, RWD springt jetzt 2min statt 10sec).

 

Auch alles andere was auf Appcommands reagieren kann hat Einfluss. Da Explorer auch auf Appcommands hört und immer läuft schätze ich ist er derjenige, der die erste Verdoppelung verursacht.

 

Aber es geht auch in die andere Richtung:

WMP schnappt sich alle Multimediatasten (nicht FB !) egal wer Fokus hat, das macht er aber auch gegenüber allen anderen Playern, die die Tasten nicht mehr empfangen wenn WMP gestartet ist. Ausnahme ist Arcade (Kampf der Giganten :)). Die laufen nebeneinander her als wär nichts gewesen. Wer Fokus hat kriegt die Tasten. Das jetzt in den DVBV reinimpfen, ich glaub da reicht ein Plugin nicht...

 

Bei MPC-HC wird's interessant, wenn der gleichzeitig mit DVBV läuft und Fokus hat filtert er 1x Tastendruck raus und DVBV funktioniert schon beinahe normal ! Leider leider reagiert DVBV auf diese Weise aber nur noch mit der letzten Taste, bei der er Fokus hatte. Also wenn es zB. FWD war, dann springt er nach Fokus auf MPC immer 10sec vorwärts, egal welche KB Multimediataste ich drücke. Da laust mich doch der Affe was für Wechselwirkungen da unterwegs sind!!

 

Aber es kommt noch besser, das funktioniert nur, wenn die betreffenden Appcommands in MPC's Options - Keys vorher definiert wurden! Und es funktioniert mit beiden, MPC x86 und MPC x64. Und in MPC-HC braucht gar kein Video zu laufen. Und wenn doch, in MPC läuft alles fehlerlos, verdammt..

 

 

1. Hauptfenster (Parent) filtert WM_KEYDOWN/WM_KEYUP heraus

oder

2. Es kommt gar kein WM_KEYDOWN/WM_KEYUP von *aussen* also vom Tastatur/FB-Treiber herein - existiert also gar nicht - sondern wird vom DVBV aus den oben genannten Gründen (die Anlernung von APPCOMMANDS erfolgte ja über die Umwandlung zu VK's) generiert. Das Ergebnis des Anlernens (ohne Plugin) von APPCOMMANDs ist eine Zordnung VK <-> Action und nicht APPCOMMAND<->Action und deshalb muss zwangsläufig ein eingehendes APPCOMMAND durch ein entsprechendes VK repräsentiert werden (und da es nicht für jedes APPCOMMAND ein entsprechendes VK gibt, muss DVBV dieses ignorieren und du hast den Grund für die Existenz diese Threads blush.gif ).

Nach allen diesen Wechselwirkungen trau ich niemand mehr. Was wenn Spy++ oder uuSpy hier einfach taub sind? :rolleyes: Drück im Einlern-Fenster mal auf dem KB auf Ü. Wenn darauf noch nichts eingelernt war wird das jetzt sofort mit "Keyboard Ü" eingetragen und die Spy's merken davon garnix. Aber DVBV hat es gehört..

Edited by craig_s
Link to comment
Ist Explorer ein natives 64-Bit Programm? Wenn ich ein Explorer-Fenster nach oben klicke geht im DVBV nichts mehr, auch nicht der letzte oder vorletzte AppCommand. Evl. ist es nicht so einfach ein natives 64-Bit Programm zu finden, weil Win7 (64 Bit) in großen Teilen 32 & 64 Bit parralel ablaufen lässt, auch in der Registry (Wow6432Node).

Das sollte das Focus-Problem bestätigen. OK nächstes Release hat dann auch 64-Bit Support. Im Übrigen gibt es das Verzeichnis "Programme" für native 64-Bit-Programme und "Programme (x86)" für 32-Bittis.

 

Eine "oberflächliche" Variante der Rootkit-Technik, sehr beliebt bei Keyloggern, und es ist denkbar, dass aus diesem Grund die eine oder andere Virenscanner-Heuristik Erwins Plugin misstrauisch beäugt.

Ich weiss Griga dass Du es so nicht meintest. Aber dennoch nur zur Erklärung für alle die dies in den falschen Hals gekriegt haben sollten. Das Plugin is nix Rootkit oder sons Schweinskram. Die verwendete Hookfunktion ist sauber von MS dokumentiert (Griga hat ja den Link beigelegt) und auch ordnungsgemäß für genau den von MS dokumentierten Zweck verwendet worden. Wer sich überzeugen will, der Quelltext liegt ja bei. Der Hinweis von Griga auf die Virenscanner ist berechtigt. Es könnte Fehlalarme geben.

 

Und jetzt endlich drücke ich auf dem Keyboard auf PLAY_PAUSE und das Video läuft weiter, verdammt. Auf der Acer FB Pause gedrückt, Video pausiert, auf dem Keyboard auf PLAY_PAUSE und das Video zuckt kurz los und gleich wieder Pause.

Sieht danach aus als ob zwei (oder mehr) Events ankommen.

 

1. Möglichkeit: Es ist eine chXXX/APPCOMMAND-Kombination. Diesen Fall hab ich im neuen Release (demnächst) dadurch geblockt dass ich nun konsequent APPCOMMAND ausschließlich durch dass Plugin behandele und nicht mehr direkt an den DVBV weitereiche (wird also herausgefiltert).

 

2. Möglichkeit. Die Auto-Repeatrate deiner Tastatur ist zu hoch eingestellt. Sie feuert also in allzu kurzen Zeitabständen. Kann man in der Systemsteuerung ändern. Warum das aber erst nach Abschalten der PS3 Bluetooth FB zutage tritt? Keine Ahnung!

 

Explorer Fenster nach oben geholt, DVBV reagiert immernoch, aber nur wenn ich die Multimediatasten auf dem Keyboard drücke, FWD, RWD, PLAY_PAUSE, Stop, PREVIOUSTRACK, NEXTTRACK, egal. Verdammt!

Wieso verdammt? Das ist doch genau das was es soll. Focus-Problem! Die MM-Tasten SOLLEN wirksam werden auch wenn der DVBV NICHT den Fokus hat.

 

Im DVBV auf Einlernen gegangen, hier sieht man was los ist. Wenn ich bei aktivem Multimedia-Keys Plugin eine der o.g. Tasten auf dem Keyboard drücke gehen 3 Fenster auf, die die gleiche Funktion einlernen wollen.

Du meinst diese Bestätigungsfenster? 3 - das deutet auf "2. Möglichkeit hin".

 

 

Zu deinen *Vermehrern* sag ich jetzt erstmal nichts. Muss mir erstmal selbst ein Bild machen.

 

Nach allen diesen Wechselwirkungen trau ich niemand mehr. Was wenn Spy++ oder uuSpy hier einfach taub sind? wacko.gif Drück im Einlern-Fenster mal auf dem KB auf Ü. Wenn darauf noch nichts eingelernt war wird das jetzt sofort mit "Keyboard Ü" eingetragen und die Spy's merken davon garnix. Aber DVBV hat es gehört..

<00008> 00081674 P WM_KEYDOWN nVirtKey:VK_OEM_1 cRepeat:1 ScanCode:1A fExtended:0 fAltDown:0 fRepeat:0 fUp:0

<00009> 00081674 S message:0xBD00 [user-defined:WM_APP+15616] wParam:000000BA lParam:001A0001

<00010> 00081674 R message:0xBD00 [user-defined:WM_APP+15616] lResult:00000000

<00011> 00081674 S WM_KILLFOCUS hwndGetFocus:000C161A

<00012> 00081674 R WM_KILLFOCUS

<00013> 00081674 S WM_IME_SETCONTEXT fSet:0 iShow:C000000F

<00014> 00081674 R WM_IME_SETCONTEXT

<00015> 00081674 S WM_IME_NOTIFY dwCommand:IMN_CLOSESTATUSWINDOW dwCommand:00000001 dwData:00000000

<00016> 00081674 R WM_IME_NOTIFY

<00017> 00081674 P WM_CHAR chCharCode:'252' (252) cRepeat:1 ScanCode:1A fExtended:0 fAltDown:0 fRepeat:0 fUp:0

 

erwin

Link to comment
Du meinst diese Bestätigungsfenster? 3 - das deutet auf "2. Möglichkeit hin"

Wenn die Auto-Repeatrate zu hoch ist, warum zeigt kein einziger anderer Player dieses Verhalten?

 

Mit uuSpy sieht man 1 einzigen Appcommand und dann 3x die Aktionen für die Bestätigungsfenster, bei denen ich 3x auf nein klicke (DVBV 4.2.1).

 

WH_CALLWNDPROC:[WM_APPCOMMAND,793], wParam:[0x00000000], lParam:[0x00310000]

WH_CALLWNDPROC:[WM_ACTIVATE,6], wParam:[0x00000000], lParam:[0x000b0704]

WH_CALLWNDPROC:[WM_WINDOWPOSCHANGING,70], wParam:[0x00000000], lParam:[0x0018fa84]

WH_CALLWNDPROC:[WM_ACTIVATEAPP,28], wParam:[0x00000001], lParam:[0x00000000]

WH_CALLWNDPROC:[WM_NCACTIVATE,134], wParam:[0x00000001], lParam:[0x000704ae]

WH_CALLWNDPROC:[WM_GETTEXT,13], wParam:[0x000000ff], lParam:[0x0018e508]

WH_CALLWNDPROC:[WM_ACTIVATE,6], wParam:[0x00000001], lParam:[0x000704ae]

WH_CALLWNDPROC:[WM_IME_SETCONTEXT,641], wParam:[0x00000001], lParam:[0xc000000f]

WH_CALLWNDPROC:[WM_IME_NOTIFY,642], wParam:[0x00000002], lParam:[0x00000000]

WH_CALLWNDPROC:[WM_SETFOCUS,7], wParam:[0x000704ae], lParam:[0x00000000]

WH_CALLWNDPROC:[WM_CANCELMODE,31], wParam:[0x00000000], lParam:[0x00000000]

WH_CALLWNDPROC:[WM_NCACTIVATE,134], wParam:[0x00000000], lParam:[0x000804ae]

WH_CALLWNDPROC:[WM_GETTEXT,13], wParam:[0x000000ff], lParam:[0x0018e508]

WH_CALLWNDPROC:[WM_ACTIVATE,6], wParam:[0x00000000], lParam:[0x000804ae]

WH_CALLWNDPROC:[WM_ACTIVATEAPP,28], wParam:[0x00000000], lParam:[0x00000e14]

WH_CALLWNDPROC:[WM_WINDOWPOSCHANGING,70], wParam:[0x00000000], lParam:[0x0018f96c]

WH_CALLWNDPROC:[WM_WINDOWPOSCHANGING,70], wParam:[0x00000000], lParam:[0x0018fa84]

WH_CALLWNDPROC:[WM_ACTIVATEAPP,28], wParam:[0x00000001], lParam:[0x00000000]

WH_CALLWNDPROC:[WM_NCACTIVATE,134], wParam:[0x00000001], lParam:[0x000804ae]

WH_CALLWNDPROC:[WM_GETTEXT,13], wParam:[0x000000ff], lParam:[0x0018e508]

WH_CALLWNDPROC:[WM_ACTIVATE,6], wParam:[0x00000001], lParam:[0x000804ae]

WH_CALLWNDPROC:[WM_IME_SETCONTEXT,641], wParam:[0x00000001], lParam:[0xc000000f]

WH_CALLWNDPROC:[WM_IME_NOTIFY,642], wParam:[0x00000002], lParam:[0x00000000]

WH_CALLWNDPROC:[WM_SETFOCUS,7], wParam:[0x000804ae], lParam:[0x00000000]

WH_CALLWNDPROC:[WM_NCACTIVATE,134], wParam:[0x00000000], lParam:[0x000b0704]

WH_CALLWNDPROC:[WM_GETTEXT,13], wParam:[0x000000ff], lParam:[0x0018e508]

WH_CALLWNDPROC:[WM_ACTIVATE,6], wParam:[0x00000000], lParam:[0x000b0704]

WH_CALLWNDPROC:[WM_WINDOWPOSCHANGING,70], wParam:[0x00000000], lParam:[0x0018fa84]

WH_CALLWNDPROC:[WM_ACTIVATEAPP,28], wParam:[0x00000000], lParam:[0x00000ed4]

WH_CALLWNDPROC:[WM_WINDOWPOSCHANGING,70], wParam:[0x00000000], lParam:[0x0018f96c]

WH_CALLWNDPROC:[WM_ENABLE,10], wParam:[0x00000001], lParam:[0x00000000]

 

 

 

So sieht es aus wenn ich während Play auf MM Taste FWD drücke. Auch nur 1 Appcommand. Wenn uuSpy nicht nur einfach gestartet ist, sondern auch auf DVBV gerichtet, geht der Multiplikator statt 3x auf 4x hoch:

 

WH_CALLWNDPROC:[WM_APPCOMMAND,793], wParam:[0x00000000], lParam:[0x00310000]

WH_GETMESSAGE:[unKnown,45762], wParam:[0x00000815], lParam:[0x000000cb]

WH_GETMESSAGE:[unKnown,45762], wParam:[0x00000815], lParam:[0x000000cb]

WH_GETMESSAGE:[unKnown,45762], wParam:[0x00000815], lParam:[0x000000cb]

WH_GETMESSAGE:[unKnown,45762], wParam:[0x00000815], lParam:[0x000000cb]

WH_CALLWNDPROC:[WM_WINDOWPOSCHANGING,70], wParam:[0x00000000], lParam:[0x0018fb8c]

WH_CALLWNDPROC:[WM_GETMINMAXINFO,36], wParam:[0x00000000], lParam:[0x0018f5c8]

WH_CALLWNDPROC:[WM_WINDOWPOSCHANGING,70], wParam:[0x00000000], lParam:[0x0018fb38]

WH_CALLWNDPROC:[WM_GETMINMAXINFO,36], wParam:[0x00000000], lParam:[0x0018f574]

WH_CALLWNDPROC:[WM_WINDOWPOSCHANGING,70], wParam:[0x00000000], lParam:[0x0018fb38]

WH_CALLWNDPROC:[WM_GETMINMAXINFO,36], wParam:[0x00000000], lParam:[0x0018f574]

WH_CALLWNDPROC:[WM_ERASEBKGND,20], wParam:[0xc7010d22], lParam:[0x00000000]

WH_CALLWNDPROC:[WM_WINDOWPOSCHANGING,70], wParam:[0x00000000], lParam:[0x0018fb94]

WH_CALLWNDPROC:[WM_GETMINMAXINFO,36], wParam:[0x00000000], lParam:[0x0018f5d0]

WH_GETMESSAGE:[unKnown,1801], wParam:[0x00000000], lParam:[0x00000309]

WH_GETMESSAGE:[WM_PAINT,15], wParam:[0x00000000], lParam:[0x00000000]

WH_GETMESSAGE:[unKnown,1335], wParam:[0x00000081], lParam:[0x00000000]

WH_GETMESSAGE:[unKnown,1335], wParam:[0x00000080], lParam:[0x00000000]

 

 

 

Wieso verdammt? Das ist doch genau das was es soll. Focus-Problem! Die MM-Tasten SOLLEN wirksam werden auch wenn der DVBV NICHT den Fokus hat.

Warum ist es gut wenn die Tasten auf 2 Playern gleichzeitig wirken?

 

Danke für dein Engagement und ich bin schon sehr gespannt auf das neue Release.

Edited by craig_s
Link to comment
Wenn die Auto-Repeatrate zu hoch ist, warum zeigt kein einziger anderer Player dieses Verhalten?

Gute Frage. Theoretisch wäre denkbar dass sie intern *entprellen*. Aber ob dies die Erklärung ist?

Setzte doch noch mal Spy an. Du must das Anlernfenster als Target wählen, nicht das Optionsfenster.

Dann wäre

 

WM_KEYDOWN nVirtKey:VK_OEM_1 cRepeat:1

 

interessant

 

Warum ist es gut wenn die Tasten auf 2 Playern gleichzeitig wirken?
.

Tun sie nicht. Das Plugin erreichen nur APPCOMMAND die nicht schon behandelt wurden. Kannst du z.B. mit dem Internetbrowser testen. Die Browser behandeln BROWSER_FORWARD, BROWSER_BACKWARD. Wenn also der Browser über dem DVBV liegt sollten diese Events beim DVBV nicht mehr ankommen. Alle anderen (nicht behandelten) schon.

 

Die Betonung liegt auf BEHANDELT. Und hier liegt die Crux. Die App muss dem System mitteilen "ich hab die WM_APPCOMMAND message behandelt". Dies tut sie indem sie einen Return-Wert auf TRUE setzt. Das Fatale ist das dies eine absolute Ausnahme ist. Sonst immer muss FALSE zurückgegeben werden wenn etwas behandelt wurde. Hier liegt also großes Potential das der Programmierer fälschlicherweise auch FALSE zurück gibt. Mit der Folge dass das APPCOMMAND behandelt wurde und danach das Plugin auch nochmal eine Behandlung durchführt. Folge die beobachtete Mehrfachbahandlung.

 

erwin

Link to comment
Gute Frage. Theoretisch wäre denkbar dass sie intern *entprellen*. Aber ob dies die Erklärung ist?

Kannst du Griga fragen, ob er *entprellen* in seinen TSPlayer eingebaut hat.

 

 

Warum ist es gut wenn die Tasten auf 2 Playern gleichzeitig wirken?
Tun sie nicht. Das Plugin erreichen nur APPCOMMAND die nicht schon behandelt wurden.

Tun sie doch, das liegt aber wohl an meiner Konfig - der völlig vergruxten Art, in der die Keyboard MM Tastatur bei mir den DVBV erreicht (s.u.).

 

 

Du must das Anlernfenster als Target wählen, nicht das Optionsfenster.

Dann wäre

WM_KEYDOWN nVirtKey:VK_OEM_1 cRepeat:1

Ok, habe uuSpy's Target jetzt auf den Bereich mit den Funktionen-Balken innerh. des Anlernfensters reduziert. Also nur der Bereich, wo untereinender "Immer in Vordergrund", "Beenden", "Senderliste" usw. usw... steht. Da sieht man schon einen Unterschied zw. Taste, VK, und Appcommand?! Leider zeigt uuSpy die Namen der Events (wie VK_OEM_1) nicht an, egal geht auch ohne.

 

Wenn der "Lernen" Button ist nicht aktiv ist wird es deutlich, der Unterschied zw. VK und APPCOMMAND liegt im fehlenden Keydown/Keyup bei APPCOMMAND.

 

VK ch20 ist Caps_Lock, es sieht aber genauso mit jedem anderen VK aus, der keine Entsprechung bei Appcommands hat. System hört auch beim Einlernen in DVBV immer mit und schaltet Caps_Lock um.

 

Zum ersten mal habe ich jetzt wie von dir beschrieben gesehen, dass das ein "gesunder" Appcommand das Einlernfenster ohne dein Plugin zwar erreicht, aber nicht weiterverarbeitet wird. Allerdings eben auch, dass ein VK dort ankommt icl. Keydown/Keyup. Leider gibt es keinen Multimedia VK ohne Appcommand-Entsprechung, dann hätt ich dich.. :D

 

Die Keyboard MM Tastatur erreicht das Target Einlernfenster scheinbar nur indirekt, egal welche Taste.. :D

 

 

1.) "Lernen" Button ist NICHT aktiv - DVBV 4.2.1 -, Multimedia-Keys Plugin kann ein- oder ausgeschaltet sein:

 

KB, Taste ü:

 

WH_GETMESSAGE:[WM_KEYDOWN or WM_KEYFIRST,256], wParam:[0x000000ba], lParam:[0x001a0001]

WH_CALLWNDPROC:[unKnown,48384], wParam:[0x000000ba], lParam:[0x001a0001]

WH_GETMESSAGE:[WM_CHAR,258], wParam:[0x000000fc], lParam:[0x001a0001]

WH_CALLWNDPROC:[unKnown,48386], wParam:[0x000000fc], lParam:[0x001a0001]

WH_GETMESSAGE:[WM_KEYUP,257], wParam:[0x000000ba], lParam:[0xc01a0001]

WH_CALLWNDPROC:[unKnown,48385], wParam:[0x000000ba], lParam:[0xc01a0001]

 

 

PS3 FB, VK ch20:

 

WH_GETMESSAGE:[WM_KEYDOWN or WM_KEYFIRST,256], wParam:[0x00000014], lParam:[0x00000001]

WH_CALLWNDPROC:[unKnown,48384], wParam:[0x00000014], lParam:[0x00000001]

WH_GETMESSAGE:[WM_KEYUP,257], wParam:[0x00000014], lParam:[0xc0000001]

WH_CALLWNDPROC:[unKnown,48385], wParam:[0x00000014], lParam:[0xc0000001]

 

 

PS3 FB, VK_MEDIA_PLAY_PAUSE:

 

WH_CALLWNDPROC:[WM_APPCOMMAND,793], wParam:[0x000506bc], lParam:[0x000e0000]

WH_GETMESSAGE:[WM_KEYDOWN or WM_KEYFIRST,256], wParam:[0x000000b3], lParam:[0x00000001]

WH_CALLWNDPROC:[unKnown,48384], wParam:[0x000000b3], lParam:[0x00000001]

WH_GETMESSAGE:[WM_KEYUP,257], wParam:[0x000000b3], lParam:[0xc0000001]

WH_CALLWNDPROC:[unKnown,48385], wParam:[0x000000b3], lParam:[0xc0000001]

 

 

Acer FB (hat keine Play-Pause Taste), APPCOMMAND_MEDIA_PLAY:

WH_CALLWNDPROC:[WM_APPCOMMAND,793], wParam:[0x0001078e], lParam:[0x102e0000]

 

 

Keyboard MM Tastatur, APPCOMMAND_MEDIA_PLAY_PAUSE:

-keine Reaktion-

 

 

 

2.) "Lernen" Button ist AKTIV - DVBV 4.2.1 -, Multimedia-Keys Plugin eingeschaltet:

 

KB, Taste ü:

 

WH_GETMESSAGE:[WM_KEYDOWN or WM_KEYFIRST,256], wParam:[0x000000ba], lParam:[0x001a0001]

WH_CALLWNDPROC:[unKnown,48384], wParam:[0x000000ba], lParam:[0x001a0001]

WH_CALLWNDPROC:[WM_SETREDRAW,11], wParam:[0x00000000], lParam:[0x00000000]

WH_CALLWNDPROC:[WM_SETREDRAW,11], wParam:[0x00000001], lParam:[0x00000000]

WH_GETMESSAGE:[WM_CHAR,258], wParam:[0x000000fc], lParam:[0x001a0001]

WH_CALLWNDPROC:[unKnown,48386], wParam:[0x000000fc], lParam:[0x001a0001]

WH_GETMESSAGE:[WM_PAINT,15], wParam:[0x00000000], lParam:[0x00000000]

WH_CALLWNDPROC:[WM_NCPAINT,133], wParam:[0x00000001], lParam:[0x00000000]

WH_GETMESSAGE:[WM_KEYUP,257], wParam:[0x000000ba], lParam:[0xc01a0001]

WH_CALLWNDPROC:[unKnown,48385], wParam:[0x000000ba], lParam:[0xc01a0001]

WH_CALLWNDPROC:[WM_NCPAINT,133], wParam:[0x3c040c7e], lParam:[0x00000000]

WH_CALLWNDPROC:[WM_ERASEBKGND,20], wParam:[0x01010cb8], lParam:[0x00000000]

WH_GETMESSAGE:[WM_PAINT,15], wParam:[0x00000000], lParam:[0x00000000]

 

 

PS3 FB, VK ch20:

 

WH_GETMESSAGE:[WM_KEYDOWN or WM_KEYFIRST,256], wParam:[0x00000014], lParam:[0x00000001]

WH_CALLWNDPROC:[unKnown,48384], wParam:[0x00000014], lParam:[0x00000001]

WH_CALLWNDPROC:[WM_SETREDRAW,11], wParam:[0x00000000], lParam:[0x00000000]

WH_CALLWNDPROC:[WM_SETREDRAW,11], wParam:[0x00000001], lParam:[0x00000000]

WH_GETMESSAGE:[WM_KEYUP,257], wParam:[0x00000014], lParam:[0xc0000001]

WH_CALLWNDPROC:[unKnown,48385], wParam:[0x00000014], lParam:[0xc0000001]

WH_GETMESSAGE:[WM_PAINT,15], wParam:[0x00000000], lParam:[0x00000000]

WH_CALLWNDPROC:[WM_NCPAINT,133], wParam:[0x00000001], lParam:[0x00000000]

 

 

PS3 FB, VK_MEDIA_PLAY_PAUSE:

 

WH_CALLWNDPROC:[WM_APPCOMMAND,793], wParam:[0x00010866], lParam:[0x000e0000]

WH_GETMESSAGE:[WM_KEYDOWN or WM_KEYFIRST,256], wParam:[0x000000b3], lParam:[0x00000001]

WH_CALLWNDPROC:[unKnown,48384], wParam:[0x000000b3], lParam:[0x00000001]

WH_GETMESSAGE:[WM_KEYUP,257], wParam:[0x000000b3], lParam:[0xc0000001]

WH_CALLWNDPROC:[unKnown,48385], wParam:[0x000000b3], lParam:[0xc0000001]

WH_GETMESSAGE:[WM_PAINT,15], wParam:[0x00000000], lParam:[0x00000000]

WH_CALLWNDPROC:[WM_NCPAINT,133], wParam:[0x00000001], lParam:[0x00000000]

 

Anm.: bis hier alle mit Keydown/Keyup, normales Einlernen

 

 

Acer FB, APPCOMMAND_MEDIA_PLAY:

 

WH_CALLWNDPROC:[WM_APPCOMMAND,793], wParam:[0x00020766], lParam:[0x102e0000]

WH_CALLWNDPROC:[unKnown,32800], wParam:[0x00000004], lParam:[0x00000002]

WH_GETMESSAGE:[WM_PAINT,15], wParam:[0x00000000], lParam:[0x00000000]

WH_CALLWNDPROC:[WM_NCPAINT,133], wParam:[0x00000001], lParam:[0x00000000]

 

Anm.: reiner Appcommand, kein Keydown/Keyup, normales Einlernen

 

 

MM Tastatur, APPCOMMAND_MEDIA_PLAY_PAUSE: -> hier ist alles nur Reaktion auf den APPCOMMAND, weil der APPCOMMAND-Event selbst, in diesem Target gar nicht ankommt

 

(->>das [WM_APPCOMMAND,793], geschickt von Keyboard MM Taste ist nur bei Target -> "ganzes Optionen-Fenster" zu sehen, siehe Post#59).

 

Kein Keydown/Keyup.

Eingelernt wird 3-5x (Bestätigungsfenster), je nach Situation.

 

 

Keyboard MM Tastatur, APPCOMMAND_MEDIA_PLAY_PAUSE:

 

WH_CALLWNDPROC:[unKnown,32800], wParam:[0x00000000], lParam:[0x00000005]

WH_CALLWNDPROC:[unKnown,32800], wParam:[0x00000000], lParam:[0x00000005]

WH_GETMESSAGE:[WM_PAINT,15], wParam:[0x00000000], lParam:[0x00000000]

WH_CALLWNDPROC:[WM_KILLFOCUS,8], wParam:[0x00050810], lParam:[0x00000000]

WH_CALLWNDPROC:[WM_IME_SETCONTEXT,641], wParam:[0x00000000], lParam:[0xc000000f]

WH_CALLWNDPROC:[WM_IME_NOTIFY,642], wParam:[0x00000001], lParam:[0x00000000]

WH_GETMESSAGE:[WM_PAINT,15], wParam:[0x00000000], lParam:[0x00000000]

WH_CALLWNDPROC:[unKnown,32800], wParam:[0x00000004], lParam:[0x00000002]

WH_CALLWNDPROC:[unKnown,32800], wParam:[0x00000000], lParam:[0x00000005]

WH_CALLWNDPROC:[unKnown,32800], wParam:[0x00000000], lParam:[0x00000005]

WH_CALLWNDPROC:[WM_IME_SETCONTEXT,641], wParam:[0x00000001], lParam:[0xc000000f]

WH_CALLWNDPROC:[WM_IME_NOTIFY,642], wParam:[0x00000002], lParam:[0x00000000]

WH_CALLWNDPROC:[WM_SETFOCUS,7], wParam:[0x001807d4], lParam:[0x00000000]

WH_GETMESSAGE:[WM_PAINT,15], wParam:[0x00000000], lParam:[0x00000000]

Edited by craig_s
Link to comment
(->>das [WM_APPCOMMAND,793], geschickt von Keyboard MM Taste ist nur bei Target -> "ganzes Optionen-Fenster" zu sehen, siehe Post#59).

Wenn DVBV ein Video abspielt und man im uuSpy ein

[WM_APPCOMMAND,793] -> geschickt von Keyboard MM Taste

sehen will, darf nur DVBV + uuSpy gestartet sein, Fokus kann auf jedem von beiden sein.

 

In dem Fall, wo noch MPC dazukommt (mit TSPlayer geht es auch) und diese dann den Multiplikator auf 1x runterschrauben wenn die Keyboard MM Taste mit Fokus auf MPC oder TSPlayer gedrückt wurde, taucht in uuSpy kein [WM_APPCOMMAND,793] mehr auf.

 

Das würde bedeuten, das der APPCOMMAND von diesen Playern abgefangen wird und DVBV nur noch auf irgendwelche anderen Befehle, die diese "übriglassen" reagiert.

 

Das führt DVBV dann aus bei - Keyboard MM Taste APPCOMMAND_MEDIA_REWIND und springt wie gewünscht nur 10sec:

 

WH_GETMESSAGE:[unKnown,45762], wParam:[0x00000815], lParam:[0x000000cb]

WH_CALLWNDPROC:[WM_GETMINMAXINFO,36], wParam:[0x00000000], lParam:[0x0018f574]

WH_CALLWNDPROC:[WM_WINDOWPOSCHANGING,70], wParam:[0x00000000], lParam:[0x0018fb38]

WH_CALLWNDPROC:[WM_GETMINMAXINFO,36], wParam:[0x00000000], lParam:[0x0018f574]

WH_CALLWNDPROC:[WM_ERASEBKGND,20], wParam:[0x31010a02], lParam:[0x00000000]

WH_CALLWNDPROC:[WM_WINDOWPOSCHANGING,70], wParam:[0x00000000], lParam:[0x0018fb94]

WH_CALLWNDPROC:[WM_GETMINMAXINFO,36], wParam:[0x00000000], lParam:[0x0018f5d0]

WH_GETMESSAGE:[unKnown,1801], wParam:[0x00000000], lParam:[0x00000309]

WH_GETMESSAGE:[WM_PAINT,15], wParam:[0x00000000], lParam:[0x00000000]

WH_GETMESSAGE:[unKnown,1335], wParam:[0x00000081], lParam:[0x00000000]

WH_GETMESSAGE:[unKnown,1335], wParam:[0x00000080], lParam:[0x00000000]

Link to comment
Ich danke dir erstmal für den großen Testaufwand. Den Rest was du schreibst muss ich erstmal verdauen.

Das glaub ich dir gerne!

 

Ich verstehe es gerade noch so :D, mehr kann ich dazu nicht sagen. Wenn noch Unklarheiten sind... :D

Edited by craig_s
Link to comment
PS3 FB, VK_MEDIA_PLAY_PAUSE:

 

WH_CALLWNDPROC:[WM_APPCOMMAND,793], wParam:[0x000506bc], lParam:[0x000e0000]

Also ich krieg noch nen Knoten im Gehirn :D

Also was sendet die denn nun (oder auch noch irgendeine 3 zwischengeschaltete Instanz), Ankommen tut WM_APPCOMMAND

 

 

Keyboard MM Tastatur, APPCOMMAND_MEDIA_PLAY_PAUSE:

-keine Reaktion-

?????

 

Anm.: bis hier alle mit Keydown/Keyup, normales Einlernen

Heist als "KEYBOARD" angelernt?

 

Wir schaffen das schon :D

Edited by erwin
Link to comment
Keyboard MM Tastatur, APPCOMMAND_MEDIA_PLAY_PAUSE:

-keine Reaktion-

Sieht so aus als ob deine MM-Tastatur das APPCOMMAND nicht an das aktive Window schickt (so wie es meine tut), sondern an eine andere Instanz die dann aktiv wird. Vielleicht dieser "Lunch Manager"? Kenne ich nicht. Jedenfalls kann man dort evt. (auch falsch) konfigurieren?

 

erwin

Link to comment
Das würde bedeuten, das der APPCOMMAND von diesen Playern abgefangen wird und DVBV nur noch auf irgendwelche anderen Befehle, die diese "übriglassen" reagiert.

 

Tun sie nicht. Das Plugin erreichen nur APPCOMMAND die nicht schon behandelt wurden.

Genauso hab ich dies gemeint.

 

erwin

Link to comment
Also ich krieg noch nen Knoten im Gehirn angry.gif

Also was sendet die denn nun (oder auch noch irgendeine 3 zwischengeschaltete Instanz), Ankommen tut WM_APPCOMMAND

Das gehört zu den einfachen Sachen :D Der uuSpy zeigt immer WM_APPCOMMAND an, wenn beim VK eine Entsprechung zu APPCOMMAND besteht, wie von dir beschrieben. Der Unterschied liegt im Vorhadensein von Keydown/Keyup. Bei reinen APPCOMMANDs ohne Entsprechung zu VK gibt es kein Keydown/Keyup.

 

DVBV reagiert ohne dein Plugin nur auf Events mit Keydown/Keyup. Was zuerst da war, das Huhn oder das Ei wage ich nicht zu spekulieren...

 

 

Keyboard MM Tastatur, APPCOMMAND_MEDIA_PLAY_PAUSE:

-keine Reaktion-

???????????

Wenn man uuSpy glauben darf erreicht das Einlernfenster kein APPCOMMAND von Keyboard MM Tastatur. Nur von der Acer FB kommt es an. Nur wenn das Target das gesamte Optionen-Fenster ist wird WM_APPCOMMAND auch von Keyboard MM Tastatur angezeigt. Frag mich nicht warum.

 

 

Anm.: bis hier alle mit Keydown/Keyup, normales Einlernen

>Heist als "KEYBOARD" angelernt?

Jein,

Taste ü als KB ü

PS3 FB, ch20 als KB ch20

PS3 FB, VK_MEDIA_PLAY_PAUSE als MEDIA_PLAY_PAUSE

Edited by craig_s
Link to comment
PS3 FB, VK_MEDIA_PLAY_PAUSE als MEDIA_PLAY_PAUSE

D.h. links (als Inputgerät) steht anstatt "Keyboard" nun "Multimedia Keys", d.h. das Plugin hat das APPCOMMAND behandelt?

 

erwin

Link to comment
QUOTE (craig_s @ Mar 31 2010, 06:26) *

Das würde bedeuten, das der APPCOMMAND von diesen Playern abgefangen wird und DVBV nur noch auf irgendwelche anderen Befehle, die diese "übriglassen" reagiert.

 

QUOTE

Tun sie nicht. Das Plugin erreichen nur APPCOMMAND die nicht schon behandelt wurden.

 

Genauso hab ich dies gemeint.

interessant! Obwohl im Fokus- Player kein Video und garnichts läuft ? Aber, wenn beide eins abspielen sieht man, dass der gleiche Befehl auf beiden ausgeführt wird. Je 1x. Der Player mit Fokus filtert nur also die Verdoppelung, nicht den Event.

Link to comment
D.h. links (als Inputgerät) steht anstatt "Keyboard" nun "Multimedia Keys", d.h. das Plugin hat das APPCOMMAND behandelt?

Ja!

Link to comment
Ja!

Vornweg ich kenne deine PS§ FB nicht.

 

Ich hab mir nochmal den ganzen thread durchgelesen. Ich weiss nicht warum du immer davon sprichts dass diese (nur?) VK's sendet. Woher du da so sicher bist konntest du mir bisher nicht klarmachen. Nach allem was zu dieser FB von dir gesagt wurde sieht es so aus dass sie APPCOMMANDS und nur APPCOMMMANDS sendet. Die beobachteten WM_KEYDOWN/WM_KEYUP werden im DVBV generiert (LARS_MQ hilf). Setze mal uuSpy auf Notepad an. Kommen da auch

WM_KEYDOWN/WM_KEYUP? Ist ja möglich dasss sie originär VK's zu einer Soft sendet die dazwischen liegt. Áber letzlich sind nur die APPCOMMANDS unterwegs.

 

erwin

Link to comment
Sieht so aus als ob deine MM-Tastatur das APPCOMMAND nicht an das aktive Window schickt (so wie es meine tut), sondern an eine andere Instanz die dann aktiv wird. Vielleicht dieser "Lunch Manager"? Kenne ich nicht. Jedenfalls kann man dort evt. (auch falsch) konfigurieren?

Es könnte sein, das der Launch Manager erst schaut, ob einer seiner bevorzugten Player wie WMP oder Arcade läuft, und die Appcommands erst freigibt, wenn beide nicht laufen und dadurch für Unordnung sorgt?

 

Genauso gut könnten diese Player aber auch von sich aus alle Appcommands exklusiv für sich reservieren/wegschnappen?

 

Oder es hat was mit DirectX 11 zu tun? Was passiert bei dir, wenn du WMP 12 laufen hast?

Link to comment
Genauso gut könnten diese Player aber auch von sich aus alle Appcommands exklusiv für sich reservieren/wegschnappen?

Du ich bin jetzt bei der Aussage

Keyboard MM Tastatur, APPCOMMAND_MEDIA_PLAY_PAUSE:

-keine Reaktion-

schon davon ausgegangenn dass da KEIN ANDERER PLAYER im Vordergrund lief. Sollte dies der Fall sein dann wird dieses APPCOMMAND mit Sicherheit *weggeschnappt* und nichts kommt an.

 

erwin

Link to comment
Kann ich dadurch beweisen, wenn ich Launch Manager's cnf so bearbeite, dass die APPCOMMAND_VOLUME_xxx auskommentiert werden können, gibt es nur noch VK Commands, d.h. sie funktionieren in jeder Anwendung. Es gibt auch keine Launch Manager-OSD-Einblendung mehr.

 

craig_s poste doch einfach mal deine cnf.

 

PS: hab ich gefunden

I have found a way to make the multimedia keys work without uninstalling the Acer Launch Manager.

 

What I have done is modify the MMKEYBD.CFG that the Launch Manager uses to map its keys... each key in the file follows the following format

 

Key <A>=<B>,<C>,<D>,<E>

 

Where:

 

<A> is an auto-increment number

<B> is either 1 or 0. If <B> is equal to 1, the Launch Manager doesn't return the key to the OS. If <B> is equal to 0, it returns the key AFTER EXECUTING ITS FUNCTION.

<C> is the key identifier, I think (exemple: E0,2E,E0,AE)

<D> is the display identifier, determines what to show on the OSD.

<E> is the key description.

 

What I have done is remove the entry for the four multimedia keys (changing <B> to 0 would work too for Winamp, but you would get weird behavior in WMP since all the actions would be doubled).

 

Vielleicht sollten wir hier wirklich auseinander halten was der Lunch Manager verbockt und was Plugin spezifisch ist

 

erwin

 

erwin

Link to comment
Vornweg ich kenne deine PS§ FB nicht.

 

Ich hab mir nochmal den ganzen thread durchgelesen. Ich weiss nicht warum du immer davon sprichts dass diese (nur?) VK's sendet. Woher du da so sicher bist konntest du mir bisher nicht klarmachen. Nach allem was zu dieser FB von dir gesagt wurde sieht es so aus dass sie APPCOMMANDS und nur APPCOMMMANDS sendet. Die beobachteten WM_KEYDOWN/WM_KEYUP werden im DVBV generiert (LARS_MQ hilf). Setze mal uuSpy auf Notepad an. Kommen da auch

WM_KEYDOWN/WM_KEYUP? Ist ja möglich dasss sie originär VK's zu einer Soft sendet die dazwischen liegt. Áber letzlich sind nur die APPCOMMANDS unterwegs.

Also bei VK_CAPITAL (20) kann sie kein APPCOMMAND schicken, weil es dafür kein APPCOMMAND gibt. Die Treiber für Bluetooth sind in Windows ja schon eingebaut, evl. schicken die APPCOMMAND? Die cfg für die winzige Software sieht so aus (auch hier beschrieben):

...

<key repeat="N">18,91,13</key>

<key repeat="Y">175</key>

<key repeat="Y">174</key>

<key repeat="N">173</key>

<key repeat="N">121</key>

<key repeat="N">120</key>

<key repeat="N">119</key>

<key repeat="N">20</key>

<key repeat="N">21</key>

...

 

das sind alles dezimale Werte von VK's bzw Tastenkombinationen.

 

uuSpy in OpenOffice Writer

PS3 FB druck auf VK_MEDIA_PLAY_PAUSE:

 

WH_CALLWNDPROC:[WM_APPCOMMAND,793], wParam:[0x0009020a], lParam:[0x000e0000]

WH_GETMESSAGE:[WM_KEYDOWN or WM_KEYFIRST,256], wParam:[0x000000b3], lParam:[0x00000001]

WH_GETMESSAGE:[WM_KEYUP,257], wParam:[0x000000b3], lParam:[0xc0000001]

 

 

PS3 FB, VK_CAPITAL (20)

 

WH_GETMESSAGE:[WM_KEYDOWN or WM_KEYFIRST,256], wParam:[0x00000014], lParam:[0x00000001]

WH_GETMESSAGE:[WM_KEYUP,257], wParam:[0x00000014], lParam:[0xc0000001]

Link to comment
Vielleicht sollten wir hier wirklich auseinander halten was der Lunch Manager verbockt und was Plugin spezifisch ist

natürlich, was warum schreib ich denn das alles! Was auffällt ist, dass ich nur mit den Keyboard MM Tasten (mit keiner FB) ähnliche Probs habe, wie du von dir beschrieben hast. Es geht um Fokus und doppelte Anschläge. Oder geht bei dir jetzt plötzlich alles?

 

Du ich bin jetzt bei der Aussage

QUOTE (craig_s @ Mar 31 2010, 07:50) *

Keyboard MM Tastatur, APPCOMMAND_MEDIA_PLAY_PAUSE:

-keine Reaktion-

 

schon davon ausgegangenn dass da KEIN ANDERER PLAYER im Vordergrund lief. Sollte dies der Fall sein dann wird dieses APPCOMMAND mit Sicherheit *weggeschnappt* und nichts kommt an.

Nein, war natürlich nicht der Fall. Ich behalte nur alles gleichzeitig im Auge und berichte davon, weil alles beeinflussen KANN. zB unterschiede zw. DirectX 9, 10, 11.

 

Die Sache mit:

 

What I have done is modify the MMKEYBD.CFG that the Launch Manager uses to map its keys... each key in the file follows the following format

Key <A>=<B>,<C>,<D>,<E>

ich war genauso schlau :D und habe die Maps nie angetastet, sondern nur bei Bedarf die betroffenen Media-Transport Funktionen komplett auskommentiert, dann werden sie nicht mehr vom Launch Manager verwaltet sondern vom Keyboardtreiber als "normale" MM-Tasten behandelt. Und zwar als VK (genau wie bei der PS3 FB), dass heisst, nur der Player bekommt sie, der Fokus hat. Da hat dann auch WMP nichts mehr zu sagen. Aber das alles geht nicht mit reinen Appcommands wie FWD und RWD.

 

Ja, ich hab auch nicht erwartet, dass ich all die Zusammenhänge so gut rüberbringen kann. Bei mir sind sie versammelt und ich hoffe halt ne Lösung "für Jedermann" zu finden und hoffe auf dein nächstes Release..

Edited by craig_s
Link to comment
(auch hier beschrieben):

Das hat doch schon mal geholfen. Sehe jetzt klarer. Wenn da eine Soft läuft die ganz explizit WM_KEYDOWNs/KEYUPs generiert ist es auch nicht verwunderlich das diese Events im Log auftauchen. Interessant ist zu erfahren was passiert wenn diese Soft nicht läuft.

 

Ich bitte dich also

 

uuSpy in OpenOffice Writer

PS3 FB druck auf VK_MEDIA_PLAY_PAUSE:

 

PS3 FB, VK_CAPITAL (20)

 

+ DVBV-Anlernfenster

 

nochmal mit ausgeschaltenen Ben Barron.

 

erwin

Link to comment

Wenn Ben Barron ausgeschaltet ist macht die PS3 FB gar nichts mehr. Keinen Mux, schade..

 

Im Net fand ich noch Leute, die über Winamp geklagt haben. Launch Manager ist also unverträglich mit DVBV und Winamp. Das hat mit deinem Plugin wenig zu tun weil das nur bei DVBV Appcommand einschaltet. Allerdings legt der *Multiplikator* mit DVBV natürlich erst los wenn dein Plugin eingeschaltet ist, in Winamp "Multimediatasten".

 

Nur wenn die Keyboard MM Tasten vom Launch Manager verwaltet werden arbeiten sie "fokusübergreifend". Aber auch nur bei DVBV und Winamp, die den Multiplikator-Defekt haben. Oder wenn WMP oder Arcade ins Spiel kommen, die alle Keyboard MM Tasten einfach *schlucken* und für andere nichts mehr übriglassen. Evl. gaukeln DVBV und Winamp dem Launch Manager irgendwie vor, sie seien WMP-artig? Können es aber doch nicht richtig?

 

Was ermöglicht Launch Manager also ausgerechnet nur bei DVBV und Winamp den Fehler zu verursachen? Warum funktionieren alle anderen Player mit Launch Manager problemlos, selbst der kleine TSPlayer? Ob es einfach nur ein *true* ist, das nicht verstanden wird?

 

Seltsam, seltsam..

Edited by craig_s
Link to comment

Die 1. und 2. Version von Multimedia-Keys Plugin haben einen Unterschied:

 

wenn ich Vers.2 über "MPC oder TSPlayer hat Fokus" ansteuere führt DVBV wie beschrieben immer nur die letzte Aktion 1x aus, die er kannte als er noch Fokus hatte, egal welche Keyboard MM Taste ich drücke.

 

Bei Version1 hört DVBV den Tastenwechsel. Tolle Lösung! Jetzt brauch ich immer einfach nur den TSPlayer mit Fokus nebenher laufen zu lassen und DVBV schaltet normal und ohne Multiplikator (der übliche Wahnsinn halt.. :o ! Oh je, aber was ist bei FullScreen?

Edited by craig_s
Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...