Delphi-Quellcode:
tbmp.Canvas.Lock;
StretchBlt(tbmp.Canvas.Handle, 0, 0,
tbmp.Width, tbmp.Height,
hDCScreen, 0, 0,
tbmp.Width, tbmp.Height,
SRCCOPY or CAPTUREBLT);
tbmp.Canvas.Unlock;
Lock, Unlock ist nicht von nöten.
StretchBlt auf der Basis auch nicht.
StretchBlt ist nur sinnvoll wenn der Source und Destination sich in der weite, Höhe unterscheiden.
So macht ein Stretch keinen sinn bei gleichen ausmaßen.
Du kannst hier also getrost BitBlt verwenden.
Zitat:
DeleteObject(hDCMem); // ich glaub das wär falsch oder?
Definitiv!
Denn ein HDC ist kein Object.
DeleteObject(hBmp);
wäre korrekt wenn du es nicht noch brauchen würdest.
Result := True;
Warum?
Du weist doch gar nicht ob StretchBlt erfolgreich war.
Wenn schon dann so.
Result := StretchBlt(bla, bla,
gruss