AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi FindWindow() von WMP der in Hintergrund spielt !!!
Thema durchsuchen
Ansicht
Themen-Optionen

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

Ein Thema von taktaky · begonnen am 21. Sep 2007 · letzter Beitrag vom 12. Okt 2007
Antwort Antwort
Seite 1 von 4  1 23     Letzte »    
taktaky
(Gast)

n/a Beiträge
 
#1

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

  Alt 21. Sep 2007, 18:07
Hallo,

wie kann man den Klassennamen eine versteckte Anwendung finden?

Ich habe versucht den Classname von Windows Media Player, der beim Spielen ausgeblenden st, zu finden, leider Ohne Erfolg.

mit dem Code kann ich den Klassennamen von WMP auslesen aber nur wenn er nicht in Hintergrund spielt:
Delphi-Quellcode:
procedure TForm1.Button6Click(Sender: TObject);
var h: HWND;
   text,classname:String;
begin


h:=FindWindow(nil,'Windows Media Player');

//h:=GetForegroundWindow;

SetLength(text,SendMessage(h,WM_GETTEXTLENGTH,0,0)+1);
SendMessage(h,WM_GETTEXT,length(text),Integer(@text[1]));

SetLength(ClassName, 255);
      //get the class name and reset the
      //memory area to the size of the name
      SetLength(ClassName,
              GetClassName(h,
                           PChar(className),
                           Length(className)));


edit1.Text:=classname;
edit2.Text:=text;

end;
Der Windows Media Player spielt in Webbrowser in Hintergrund

Der html Code in Webbrowser ist so geschrieben:
Code:
<body>





[img]test.avi[/img]</p>

</body>

</html>
Wie kann man die Windows (Klassennamen) von WMP wenn er so versteckt finden?



Gruß





-------------
  Mit Zitat antworten Zitat
Innos

Registriert seit: 5. Jun 2007
142 Beiträge
 
#2

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

  Alt 21. Sep 2007, 18:45
Zitat von taktaky:
h:=FindWindow(nil,'Windows Media Player');
glaube das liegt daran...
entweder du downloadest x-spy (ein prog mit dem du von Programmen das Handle rausbekommst) oder du benutzt eben diese function^^

Delphi-Quellcode:
function GetWMPHandle : hwnd;
287 begin
288 result := FindWindow('WMPlayerApp', nil);
289 result := FindWindowEx(result, 0, 'WMPAppHost', 'WMPAppHost');
290 if result = 0 then result := Findwindow(nil,'Windows Media Player');
291 end;
dann musste nur noch hinschreiben (auf deinen code bezogen)

h:=GetWMPHandle; ungetestet aba sollte gehn... wie gesagt mit x-spy kriegste eine besseren handle und sparst di diese ganze funktion^^

EDIT: ups^^ das mit dem webrowsern hab ich überlesen... aba da müsstest du dann erst deinen webbrowser ansprechen und dann dein WMP glaub ich mal
  Mit Zitat antworten Zitat
taktaky
(Gast)

n/a Beiträge
 
#3

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

  Alt 21. Sep 2007, 20:01
Hallo,

mir ist lieber einen Code.

Ich habe die Funktion verwendet, bleibt leider der versteckte Windows Media Player immer unendeckt!


Gruß





____________
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.542 Beiträge
 
Delphi 11 Alexandria
 
#4

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

  Alt 21. Sep 2007, 20:10
Hast Du Dir schon einmal Gedanken darüber gemacht, dass der verwendete MediaPlayer in diesem Fall ein Browser-Plugin sein könnte?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
taktaky
(Gast)

n/a Beiträge
 
#5

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

  Alt 21. Sep 2007, 20:23
Zitat von DeddyH:
Hast Du Dir schon einmal Gedanken darüber gemacht, dass der verwendete MediaPlayer in diesem Fall ein Browser-PlugIn sein könnte?
Nicht gemacht ! Du hast vollkommen Recht Deddy. Das kann sein

Und wenn es ein Browser Plug-In wäre, heißt das vergeblich ?



Gruß
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.542 Beiträge
 
Delphi 11 Alexandria
 
#6

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

  Alt 21. Sep 2007, 20:36
Sorry, da muss ich passen, nicht meine Materie.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
taktaky
(Gast)

n/a Beiträge
 
#7

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

  Alt 22. Sep 2007, 10:45
Zitat von DeddyH:
Sorry, da muss ich passen, nicht meine Materie.
Hallo Deddy

ich habe diese Information mit Hilfe von WinSpay :
[Edit]Siehe Anhang[/Edit]

So habe ich so versucht :

Delphi-Quellcode:

const
{Windows Media Player API}
...
WMP_MEDIA_PLAY_PAUSE = $E0000;

procedure TForm1.Button1Click(Sender: TObject);
var myHandle:HWND;
begin
//myHandle := 331038;
//myHandle := FindWindow(nil, 'ActiveMovieWindow'); // über seinen Titel finden
//myHandle := FindWindow('VideoRenderer', 'ActiveMovieWindow'); // über seinen Klassennamen finden
//myHandle := FindWindow('WMPlayerApp', 'Windows Media Player'); // über seinen Classname finden
if myHandle <> 0 then
  Sendmessage(myHandle, WM_APPCOMMAND, 0, WMP_MEDIA_STOP)

  else
  ShowMessage('Nicht gefunden');

end;

end.
Woran liegt das Problem?!



Gruß




-------------------


_________________________

[edit=SirThornberry] Mfg, SirThornberry[/edit]
Miniaturansicht angehängter Grafiken
videoinwebbrowser1_146.jpg  
  Mit Zitat antworten Zitat
Billi Berserker
(Gast)

n/a Beiträge
 
#8

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

  Alt 22. Sep 2007, 11:23
Das Handle per WinSpector or X-Spy oder whatever raussuchen bringt dir nix da es sich jedesmal eh ändert.
Was du brauchst ist Titel oder noch besser den Namen der Fenster Klasse des Players (oder beides). Damit kannst du das Fenster finden und eventuell steuern.

Die Frage ist jedoch welches Fenster das richtige ist (kann auch das parent fenster von dem was du ausgewählt hast sein) und ob es sich mit den selben Nachrichten wie das WMP Fenster Steuern läßt. Am besten mal Onkel Google befragen...
  Mit Zitat antworten Zitat
taktaky
(Gast)

n/a Beiträge
 
#9

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

  Alt 22. Sep 2007, 12:15
Hi,

der Windows Media Player spielt in Webseite in Hintergrund (Vielleicht als Plug-In).
HTML-Code :
Delphi-Quellcode:
<html>
<head>
<title>Test</title>
</head>
<body>

[img]test.avi[/img]

</body>
</html>
Wie kann ich den Titel oder den Classname rausfinden?

Der Onkel Google hilft aber nicht viel . Hier ist alles, alles was er mir geschenckt hat :
Delphi-Quellcode:
  function TVideoWindow.GetVideoHandle: THandle;
  begin
    if FVideoWindow <> nil then
      result := FindWindowEx(Parent.Handle,0,Pchar('VideoRenderer'), Pchar(name))
    else
      Result := Canvas.Handle;
  end;

Was muss ich tun, um einen Code zu generieren?
es ist nicht möglich mit der Option "Unter der Maus" !

wie kann ich das Button Code klicken, ohne die Maus

Hier ist das Video(ein Video in HTML-Seite) zum Testen :
Demo (Video) versteckt




Gruß


___________________________
  Mit Zitat antworten Zitat
Benutzerbild von jfheins
jfheins

Registriert seit: 10. Jun 2004
Ort: Garching (TUM)
4.579 Beiträge
 
#10

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

  Alt 22. Sep 2007, 16:23
Winspy hat eine integrierte Funktion "Code generieren" - hast du die mal ausprobiert? Funktioniert das?
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 4  1 23     Letzte »    


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:39 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz