Delphi-PRAXiS
Seite 5 von 5   « Erste     345   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Programm beenden über Programm (https://www.delphipraxis.net/5630-programm-beenden-ueber-programm.html)

Luckie 20. Dez 2003 18:42

Re: Programm beenden über Programm
 
Wenn du keine Klasse angeben willst, darfst du keinen Leerstring übergeben, sonder musst nil übergeben. :warn:

TStringlist 20. Dez 2003 21:57

Re: Programm beenden über Programm
 
Ja genau, NIL ist natürlich noch ein bisschen besser als PChar(0).

Aber gerade auch mit NIL trägt man da doch ebenfalls dem Umstand Rechnung, dass es sich bei diesen Parametern doch eben um Pointer (auf Null-terminierte Strings) handelt. Wenn hier im Forum dann also sonst immer nur hardgecodete Strings als normale Strings da reingeschrieben werden - weil einfach irgendeine Compilermagic das in diesem Falle dann automatisch umcastet - so ist es für den nicht-Profi dann doch einfach umso schwerer, im Falle eines leeren Parameters auch tatsächlich zum NIL zurückzufinden. ...würde da nämlich tatsächlich ein normaler String als Parameter verlangt werden, dann wäre im besagten Fall da ein NIL nämlich nie richtig, sondern man müsste dann wieder ein '' verwenden...

Hier also auf so eine Compilermagic zu vertrauen und nur deswegen nicht mehr die vollen Parameter-Formate richtig auszuschreiben halte ich da also (pädagogisch *g*) doch eher für verwirrend...

(Ich schreibe das nur, weil das in diesem Thread hier ja auch so der Fall war. Der ursprüngliche Fragesteller könnte hier also in dem einen oder anderen Versuchslauf durchaus mal mit einem solchen leeren ('') String gearbeitet haben und nur deswegen dann am Ziel vorbeigeschrammt sein :( )

taktaky 22. Sep 2007 11:34

Re: Programm beenden über Programm
 
Hallo,

ich habe das gleiche Problem,

ich möchte nicht ein Programm beenden sondern ein Video stoppen.

Das Video wird mit Windows Media Player in Internet Explorer aber in Hintergrund gespielt.

Mit dem WinSpy zeigt mir die Information von dem Video :


http://members.lycos.co.uk/forforums...ebbrowser1.jpg

Es musste eigentlich mit dem Code funktionieren aber leider nicht ! :

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.
Wie kann man das Fenster von WMP finden?

Hier ist ein Demo (ein Video in HTML-Seite) in diesem Art (besser die Seite mit Internet Explorer öffnen) :
Demo (Video) versteckt


----------


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:49 Uhr.
Seite 5 von 5   « Erste     345   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz