Einzelnen Beitrag anzeigen

taktaky
(Gast)

n/a Beiträge
 
#17

Re: FindWindow() von WMP der in Hintergrund spielt !!!

  Alt 23. Sep 2007, 15:00
Das war ein anderes Beispiel und nicht über das Video in der Webseite.

OK wir kommen zu dem Beispiel in der Webseite :

das ist der Code mit Hilfe von Winspy :
Delphi-Quellcode:
const
{Windows Media Player API}
...
WMP_MEDIA_PLAY_PAUSE = $E0000;
WMP_MEDIA_STOP = $D0000;
...

procedure TForm1.Button3Click(Sender: TObject);
var
  wnd: HWND;
begin
  wnd := FindWindow('IEFrame','WMP - Microsoft Internet Explorer');
  wnd := FindWindowEx(wnd, 0, 'Shell DocObject View', nil);
  wnd := FindWindowEx(wnd, 0, 'Internet Explorer_Server', nil);
  wnd := FindWindowEx(wnd, 0, 'Internet Explorer_ActiveMovie', nil);
  wnd := FindWindowEx(wnd, 0, 'VideoRenderer', nil);
  if wnd <> 0 then
    Sendmessage(wnd, WM_APPCOMMAND, 0, WMP_MEDIA_PLAY_PAUSE)
    else
    ShowMessage('nicht gefunden');
  end;
end.
Nachdem Klick auf das Button passiert nichts, d.h. das Windows hat der Code gefunden, das Video aber nicht. Oder?

Nun müssen wir die Funktion von Microsoft dazu in den Code einbauen :
Delphi-Quellcode:
HWND FindWindowEx(
    HWND hwndParent,
    HWND hwndChildAfter,
    LPCTSTR lpszClass,
    LPCTSTR lpszWindow
);
Der Code oben ist wahrscheinlich in C Sprache !


Das Video ist als Child eingebaut, deswegen müssen wir die Funktion
oben verwenden.


Ich weiß aber nicht wie und wo die Funktion einbauen muss?!


Demo
__________
  Mit Zitat antworten Zitat