Einzelnen Beitrag anzeigen

Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#8
  Alt 27. Jun 2003, 17:29
Moin Zusammen,

ich hab' inzwischen noch mal experimentiert.
Ein Screenshot von Virtual Dub tut's problemlos, was mich vermuten lässt, dass dort kein Mediaplayer verwendet wird. (In den Sourcen konnte ich auch nichts entsprechendes finden)

Dann fiel mir zufällig auf, dass ein Screenshot von IrfanView auch Ok war.
Hierbei wird aber ganz offensichtlich ein über MCICreateWnd erzeugtes Fenster verwendet (für die die's interessiert: Unter W2K in der msvfw32.dll zu finden, nicht wie's im PSDK steht in der vfw32), und bei dem hatte ich das gleiche Problem.

Wiederum durch Zufall, bin ich nun darauf gekommen, dass ein Screenshot immer funktioniert, wenn das Formular einen Moment lang nicht sichtbar war.
Hat dafür jemand eine Erklärung?

So würde es gehen. Ist natürlich als Lösung indiskutabel:

Delphi-Quellcode:
  MediaPlayer1.Display := Panel1;
MediaPlayer1.Close;
  MediaPlayer1.Open;
  Panel1.Width := Mediaplayer1.DisplayRect.Right - Mediaplayer1.DisplayRect.Left;
  Panel1.Height := Mediaplayer1.DisplayRect.Bottom - Mediaplayer1.DisplayRect.Top;
  WindowState := wsMinimized;
  Application.ProcessMessages;
  Sleep(100);
  WindowState := wsNormal;
PS:
Bei der Suche bin ich auf ein Forum gestossen, in der empfohlen wurde die Hardwarebeschleunigung für die Anwendung, oder, zur Not im System abzuschalten (leider ohne Beispiel ). Dann wird kein Overlay verwendet. Dazu konnte ich dann leider für meine Geforce 2MX nichts finden.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat