Hallo,
Zitat von
Khabarakh:
@xaromz: Das stimmt auch, aber _der_ Fehler ist an einer anderen Stelle.
Stimmt. Ich hatte mir den Quelltext nicht so genau angesehen, mir wurde da gleich so anders...
Aber mal im Ernst. So sollte es funktionieren:
Delphi-Quellcode:
function ScreenToBitmap: TBitmap;
var
DC: HDC;
begin
Result := TBitmap.Create;
Result.Width := Screen.DesktopWidth;
Result.Height := Screen.DesktopHeight;
try
DC := GetDC(0);
BitBlt(Result.Canvas.Handle, 0, 0, Result.Width, Result.Height,
DC, 0, 0, SRCCOPY);
finally
ReleaseDC(0,
DC);
end;
end;
Dann:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
Bit: TBitmap;
begin
Bit := ScreenToBitmap; // Funktion aufrufen
image1.Picture.Bitmap.Assign(Bit); // Ergebnis anzeigen
Bit.SaveToFile('C:\neuertest.bmp'); // Ergebnis speichern
Bit.Free; // Aufräumen, nie vergessen
end;