Einzelnen Beitrag anzeigen

Andreas L.
(Gast)

n/a Beiträge
 
#8

Re: Auf Tastendruck von Media Center Fernbedienung reagieren

  Alt 18. Mär 2010, 17:17
Zitat von shmia:
Zitat von Andreas L.:
Ja, genau die Eigenschaft werte ich aus
Da fehlt noch eine Maske (FAPPCOMMAND_MASK)
Delphi-Quellcode:
const FAPPCOMMAND_MASK = $F000;
ShowMessageFmt('App-Command %d', [Message.LParamHi and not FAPPCOMMAND_MASK]));
Damit wird zwar die Play-Taste erkannt, nicht aber Pause:
Delphi-Quellcode:
procedure TForm6.WndProc(var Message: TMessage);
const
  FAPPCOMMAND_MASK = $F000;
begin
  inherited WndProc(Message);

  if (Message.Msg = WM_APPCOMMAND) then
  begin
    with TStringList.Create do
    try
      if FileExists(ExtractFilePath(ParamStr(0)) + 'test.log') then
        LoadFromFile(ExtractFilePath(ParamStr(0)) + 'test.log');
      Add(IntToStr(Message.Msg));
      Add(IntToStr(Message.WParam));
      Add(IntToStr(Message.LParam));
      Add(IntToStr(Message.Result));
      Add(IntToStr(Message.WParamLo));
      Add(IntToStr(Message.WParamHi));
      Add(IntToStr(Message.LParamLo));
      Add(IntToStr(Message.LParamHi));
      Add(IntToStr(Message.ResultLo));
      Add(IntToStr(Message.ResultHi));
      case (Message.LParamHi and not FAPPCOMMAND_MASK) of
        APPCOMMAND_MEDIA_NEXTTRACK: Add('NEXT');
        APPCOMMAND_MEDIA_PREVIOUSTRACK: Add('PREVIOUS');
        APPCOMMAND_MEDIA_STOP: add('stop');
        APPCOMMAND_MEDIA_PLAY_PAUSE: add('play/pause'); //wird nicht erkannt
        APPCOMMAND_MEDIA_PLAY: add('play'); //wird erkannt
        APPCOMMAND_MEDIA_RECORD: add('record');
      end;
      Add('---');
      SaveToFile(ExtractFilePath(ParamStr(0)) + 'test.log');
    finally
      Free;
    end;
  end;
end;
Kannst du noch erklären was es mit der Maske aufsich hat?
  Mit Zitat antworten Zitat