Einzelnen Beitrag anzeigen

Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Desktop als Video speichern?

  Alt 7. Sep 2003, 12:52
Moin Sharky,

die einfachste Variante die mir dazu einfällt, wäre es Screenshots zu machen, diese abzuspeichern, und mit einer Software, die aus BMPs AVIs macht umzuwandeln.
Ein Screenshot lässt sich selbst bei 1280er Auflösung sehr schnell machen, nur ist der Platzbedarf dann nicht sonderlich gering.

Ich hab' mir dass mal so geschrieben:

Delphi-Quellcode:
function TForm1.ScreenShot(const AiLeft : integer;const AiTop : integer;const AiWidth : integer;const AiHeight : integer) : TBitmap;

var
  dcWork : HDC;

begin
  try
    Result := TBitmap.Create;
    Result.Width := AiWidth;
    Result.Height := AiHeight;
    dcWork := GetDC(0);
    try
      BitBlt(Result.Canvas.Handle,0,0,AiWidth,AiHeight,dcWork,AiLeft,AiTop,SRCCOPY);
    finally
      ReleaseDc(0, dcWork);
    end;
  except
    FreeAndNil(Result);
  end;
end;
Vermutlich wird das ganze daran scheitern, dass das Abspeichern der einzelnen Screenshots zeitintensiv ist.
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