Guten Abend,
ich versuche einen Screenshot einer Flashanwendung auf Facebook zu machen.
bei anderen Anwendungen, beispielsweise YouToube bekomme ich den Screenshot ohne Probleme, nur bei Facebook will es nicht funktionieren.
Ich bekomme stets nur ein BitMap, das 1x1 Px groß ist.
So bekomme ich meinen Screenshot:
Delphi-Quellcode:
function TReader.Screenshot(h: HWND):TBitMap;
var Rec: TRect;
b:TBitmap;
begin
b := TBitmap.Create;
GetWindowRect(h, Rec);
b.Width := Rec.Right - Rec.Left;
b.Height := Rec.Bottom - Rec.Top;
BitBlt(b.Canvas.Handle, 0, 0, b.Width, b.Height, GetWindowDC(h), 0, 0, SRCCOPY);
result := b;
end;
Ich benutze Firefox (bei IE funktioniert es auch nicht) die Klasse heißt dort GeckoPluginWindow
ich würde mich freuen, wenn mir jemand weiterhelfen kann.
Gruß
corema
EDIT:
Heute morgen habe ich herrausgefunden, dass das offensichtlich durch das attribut wmode im embed-tag veruracht wird:
<embed src="myflash.swf"
wmode="opaque" type="application/x-shockwave-flash">
Ist dieses Attribut enhalten, erhalte ich KEIN
Handle (Ansonsten schon).
Bei facebook bekam ich zwar ein
Handle, doch dies war nicht das von der Anwenung, die ich haben wollte, sondern von einer anderen.