![]() |
Bildschirmfoto knipst nicht alles
Liste der Anhänge anzeigen (Anzahl: 1)
Hi, ich probiere mich mal am Knipsen von Fenstern, es funktioniert ja eigentlich auch schon relativ gut.
Bei manchen Programmen die ich Knipse fehlt leider Bildinhalt, ich habe mal mit professioneller Screenshot-Software den Fehler geknipst damit ich es irgendwie besser Erklären kann. Im Hintergrund mein geknipstes Bild in IrfanView, im Vordergrund das was ich Knipsen wollte Anhang 49152 Da sieht man das in der Menu-Leiste nicht alles vom Original aufgenommen wurde. Das ist eines der Probleme, das andere, wenn ich OpenGL/DirectX Anwendungen starte und Knipse entstehen nur schwarze Bilder, gibts da ein Trick? Mit diesem Code erstelle ich die Bilder.
Delphi-Quellcode:
procedure TForm1.Screenshot (const FullWindow: Boolean = True);
var Win: HWND; DC: HDC; Bmp: TBitmap; FileName: string; WinRect: TRect; Width: Integer; Height: Integer; begin Form1.Label1.Caption := 'Error: No Handle!'; Form1.Hide; try Application.ProcessMessages; Win := GetForegroundWindow; if Win = 0 then Exit; Form1.Label1.Caption := 'Error during save!'; if FullWindow then begin GetWindowRect(Win, WinRect); DC := GetWindowDC(Win); end else begin Windows.GetClientRect(Win, WinRect); DC := GetDC(Win); end; try Width := WinRect.Right - WinRect.Left; Height := WinRect.Bottom - WinRect.Top; Bmp := TBitmap.Create; try Bmp.Height := Height; Bmp.Width := Width; BitBlt(Bmp.Canvas.Handle, 0, 0, Width, Height, DC, 0, 0, SRCCOPY); FileName := 'Screenshot_' + FormatDateTime('mm-dd-yyyy-hhnnss', Now()); Bmp.SaveToFile(Format('.\%s.bmp', [FileName])); finally Form1.Label1.Caption := 'Saved!'; Bmp.Free; end; finally ReleaseDC(Win, DC); end; finally Form1.Show; end; end; |
AW: Bildschirmfoto knipst nicht alles
Zitat:
![]() |
AW: Bildschirmfoto knipst nicht alles
Das könnte ich einbauen mit OSVersion Kontrolle, aber ich selbst benutze Windows 7.
Hast Du da eventuell noch eine Api auf die ich zurückgreifen könnte? Danke für den Tipp Zacherl! |
AW: Bildschirmfoto knipst nicht alles
Zitat:
![]() |
AW: Bildschirmfoto knipst nicht alles
Ja ok, mit DX/GL das seh ich total ein und lass es mehr als außen vor.
PintWindow kenne ich auch noch nicht, da schau ich mal nach. Ich glaube nicht das der TC hardwarebeschleunigung an den fehlenden Stellen macht, das muss eine andere Ursache haben. Zacherl Danke nochmal, bei Problemem melde ich mich wieder! |
AW: Bildschirmfoto knipst nicht alles <GELÖST>
PrintWindow ist für mich DIE LÖSUNG!!! Vielen lieben Dank!
Habs bereits erfolgreich eingebaut und es knippst den TC ohne fehlenden Bildinhalt! Frage: Funktioniert PrintWindow auch noch mit Windows 10?
Delphi-Quellcode:
Mini-Upgrade, so wirds bei Bedarf ohne Fenster-Rahmen geknippst.
function MyPrintWindow(const Win: HWND = 0; var Bmp: TBitmap; const FullWindow: Boolean = True): Boolean;
var rect: TRect; begin Result := False; if Win = 0 then Exit; if FullWindow then GetWindowRect(Win, rect) else Windows.GetClientRect(Win, rect); bmp.Width := rect.Right - rect.Left; bmp.Height := rect.Bottom - rect.Top; Result := PrintWindow(Win, Bmp.Canvas.Handle, 0) ; end; Ps: Der erste Parameter sollte ein Prozess-Handle sein was ein Window besitzt. |
AW: Bildschirmfoto knipst nicht alles
Verdammt noch mal :wall: :duck: eigentlich bin ich ja zu blöd für so was. ;)
Aber trotzdem bei mir knipst alles und ich kann es sogar noch etwas verschönern. Sorry das musste sein! gruss |
AW: Bildschirmfoto knipst nicht alles
Du kannst es ja mit FullWindow = False mal probieren.
|
AW: Bildschirmfoto knipst nicht alles
Bitte bitte :) Du solltest deinen Code allerdings noch um ein
Delphi-Quellcode:
vor dem
Bitmap.Canvas.Lock
Delphi-Quellcode:
und ein
PrintWindow
Delphi-Quellcode:
danach erweitern. Ansonsten kann es vorkommen, dass seltsame Effekte auftreten wie z.B., dass das Zielfenster unkontrolliert anfängt zu flackern, während der Screenshot erstellt wird.
Bitmap.Canvas.Unlock
|
AW: Bildschirmfoto knipst nicht alles
Zitat:
Warum? Weil es nur mit einem Fenster richtig funktioniert in dem auch alle dafür benötigten Messagen korrekt verarbeitet werden. Wenn dem nicht so ist lass es lieber. Die Messagen die du behandeln musst sind WM_PRINT, WM_PRINTCLIENT nur damit kannst du korrekt auf den bereitgestellten wParam DC Zeichnen. WM_PAINT sollte dann komplett ignoriert werden. Verwende lieber etwa auf dieser Art.
Code:
BOOL CaptureScreen(HBITMAP& hBitmap)
{ HDC hDCScreen = ::CreateDC(_T("DISPLAY"), NULL, NULL, NULL); const int cx = ::GetDeviceCaps(hDCScreen, HORZRES); const int cy = ::GetDeviceCaps(hDCScreen, VERTRES); HDC hDCMem = ::CreateCompatibleDC(hDCScreen); hBitmap = ::CreateCompatibleBitmap(hDCScreen, cx, cy); HBITMAP hBmpOld = (HBITMAP)::SelectObject(hDCMem, hBitmap); // Note: CAPTUREBLT flag is required to capture layered windows DWORD dwRop = SRCCOPY | CAPTUREBLT; BOOL bRet = ::BitBlt(hDCMem, 0, 0, cx, cy, hDCScreen, 0, 0, dwRop); ::SelectObject(hDCMem, hBmpOld); ::DeleteDC(hDCMem); ::DeleteDC(hDCScreen); return bRet; } Zitat:
Es bleibt sich gleich. gruss |
AW: Bildschirmfoto knipst nicht alles
Zum einen, ich Zeichne nichts ich knipps und Speicher. Es ist mittlerweile eine Tray-App ohne Fenster, nur Popupmenu.
Ok das ist etwas gelogen, es erscheint eine Prozess-Liste mit allem was ich knippsen könnte. Was ich wollte macht es, ich wollte ein Window knippsen und mit FullWindow steuert man ob mit Fenster-Rahmen oder ohne, Du wirst da keinen Unterschied feststellen da Deine SkinEngine kein Windows-Rahmen besitzt. Ich übersetze mal Dein Code nach Delphi und lasse mich Überraschen. Danke dafür!:thumb: Das Lock/Unlock habe ich einfach mal mit integriert, Danke Zacherl für den Hinweis!:thumb: Zitat:
|
AW: Bildschirmfoto knipst nicht alles
Zitat:
Die Quelle ist meine Erfahrung.. Und was Windows Messagen sind muss dir doch klar sein. Google mal nach WM_PRINT und WM_PRINTCLIENT zum Beispiel in Verbindung mit AnimateWindow ;) gruss |
AW: Bildschirmfoto knipst nicht alles
Zitat:
![]() ![]() ![]() ![]() Dennoch ist die Desktop Duplication API wie gesagt sowohl dieser Methode als auch dem Kopieren des DC Inhaltes jederzeit vorzuziehen. Wenn man noch kein Windows 8 verwendet, steht diese halt leider noch nicht zur Verfügung. |
AW: Bildschirmfoto knipst nicht alles
Da schau an, nun weiß ich was Dir dabei im Kopf rumgeflattert ist, das gibt mir Anlass das ganze nochmal zu Überdenken, bei Deiner Roten Schrift Post dachte ich so etwas in der Richtung:
Wenn eine Applikation kein WM_PRINT o.ä. anbietet dann wird nichts aus Foto. Da meine Eigenen Programm diese Msg bis jetzt noch nie verwendet haben, testete ich es und knippsen ging. Der Nebel ist auf jedenfall gelichtet, many thanks!:thumb::thumb: Was mir jetzt wiederum durch den Kopf spukt, bei meinem ersten Post, da kopiere ich ja das DC und erhalte Bilder wo halt Sachen fehlen, nicht generell aber mal hier mal da. Wenn das kompilat mit Deiner Methode nicht zu groß ist, könntest Du es bitte zu Testzwecken bereitstellen, da seh ich ja gleich was mich erwartet und das wichtigste, ob es den Inhalt tatsächlich so knippst wie ich ihn aufm Desktop sehe. Siehe erster Post das Bilder-Knipps-Problem. Nun bin ich ehrlich gesagt mehr als verwirrt..... |
AW: Bildschirmfoto knipst nicht alles
Zitat:
Es hat damit zu tun weil du WM_PAINT zum zeichnen verwendest und nicht das zur Verfügung gestellte DC in WParam.. Wenn du WM_PRINT verwendest must du kein extra DC erstellen denn es ist vorhanden. Zitat:
meine NONVCL Lib integriert und das ist kein Spielchen. Aber gut sei's drum. ![]() gruss |
AW: Bildschirmfoto knipst nicht alles
Zitat:
Delphi-Quellcode:
. Die normale
WM_PRINTCLIENT
Delphi-Quellcode:
braucht man aber explizit nicht selbst implementieren.
WM_PRINT
Delphi-Quellcode:
könnte demnach Probleme machen, die Variante mit Rahmen allerdings nicht.
PW_CLIENTONLY
|
AW: Bildschirmfoto knipst nicht alles
Zitat:
Solange man nicht mit NonVcl Arbeitet denn da gibt es nur das man explizit definiert. :) Das ist in C++ genauso wenn du kein WM_PRINT in deiner Winproc einbindest tut sich da auch nichts. gruss |
AW: Bildschirmfoto knipst nicht alles
Zitat:
Zitat:
Delphi-Quellcode:
auch ohne eigene Behandlung von
WM_PRINT
![]() |
AW: Bildschirmfoto knipst nicht alles
Zitat:
Es kann abgearbeitet werden nur wenn du mit dem DC von wParam nichts tust und sogar im gleichen Kontext noch WM_PRINT verwendest dann ist es sinnlos. Ich habe alles durch und bestimmt 3 Tage gebraucht um AnimateWindow unter NonVcl ans laufen zu bringen. Wenn ich dies Message nicht zu meinem eigenen Window schicke passiert gar nichts. Mein Window ist in diesen Fall schwarz.
Delphi-Quellcode:
gruss
procedure TSkinEngine.PaintDoubleBuffer(WinHandle: hWnd; imgHdc: HDC);
var lP: longint; begin if not Composited(WinHandle) then begin PaintBackground(WinHandle, False); // Bei Fehler PRF_CLIENT deaktivieren lP := PRF_CHILDREN or PRF_CLIENT or PRF_NONCLIENT or PRF_CHECKVISIBLE; SendMessageW(WinHandle, WM_PRINT, GetPaintDC(WinHandle), lP); end; PaintToScreen(WinHandle, imgHdc, 0, 0, 0); end; |
AW: Bildschirmfoto knipst nicht alles
Kurze Rückmeldung dann könnt ihr ja weiter machen, ich les euch gerne weil ich dabei gut lerne.
Zwischenbilanz mit PrintWindow: Viele non-VCLs von Luckie kompiliert und geknippst = null problemo Viele VCLs, auch non-Delphi, knippsen = null probleme Hardwarebeschleunigter MediaPlayerClassic während Wiedergabe geknippst = null problemo DirectX/OpenGL = Je nach Anwendung, das DX/GL ClientRect bleibt leer (nicht schwarz sondern so als ob man ne leere große Form hat.) Zumindest wird der Rahmen korrekt geknippst falls einer da ist und ichs aktiviert hab (FullWindow = True) Was mich nun interessieren würde wäre ein Example wo es Probleme bereitet. Da ihr zwei Euch so gut in der Materie auskennt da habt ihr doch bestimmt ein kleines Dingens rumliegen was ich nicht knippsen könnte, oder? |
AW: Bildschirmfoto knipst nicht alles
Zitat:
![]() gruss |
AW: Bildschirmfoto knipst nicht alles
Zitat:
Delphi-Quellcode:
mit
PrintWindow
Delphi-Quellcode:
funktioniert meines Verständnisses nach halt immer (auch bei NonVCL), solange man am Ende in seiner WndProc die
WM_PRINT
Delphi-Quellcode:
aufruft (was man immer machen sollte). Aber gut, ich bin da sicherlich nicht so weit drinnen in der Materie wie Emil. Wobei KodeZwergs Tests ja eigentlich für sich sprechen.
DefWindowProc
Was Probleme geben könnte ist wie gesagt alles, was
Delphi-Quellcode:
verwendet (was wiederrum laut Doku ja nur der Fall ist, wenn man bei
WM_PRINTCLIENT
Delphi-Quellcode:
das
PrintWindow
Delphi-Quellcode:
setzt).
PW_CLIENTONLY
Das LayeredWindow würde mich tatsächlich aber auch mal interessieren. Zumindest auf einem halbwegs aktuellen Windows. Einige dieser Limitierungen sind seit spätestens 8.1 nämlich komplett obsolet. |
AW: Bildschirmfoto knipst nicht alles
Rückmeldung, habe nun ein non-Vcl (das berühmte 2 Fenster Demo von Luckie) so abgeändert:
Delphi-Quellcode:
Ich kann es ohne Probleme knipsen, aber wie Zacherl bestimmt Richtig vermutet bin ich irgendwo anders nur nicht bei dem worüber Ihr redet.
{Fenste 1 erzeugen und hWnd1 zuweisen}
hWndMain := CreateWindowEx(0, ClassName1, Window1Name, WS_VISIBLE or WS_EX_LAYERED, LPARAM(CW_USEDEFAULT), LPARAM(CW_USEDEFAULT), Window1Width, Window1Height, 0, 0, hInstance, nil); |
AW: Bildschirmfoto knipst nicht alles
Nur weil du das Fenster mit dem Style WS_EX_LAYERED erstellst ist es nicht transparent. ;)
Es fehlen die Attribute es fehlt die BLENDFUNCTION es fehlt UpdateLayeredWindow und, und, und :) Ganz so einfach ist es dann doch nicht. Such doch mal hier im Forum nach einem Projekt welches WS_EX_LAYERED korrekt verwendet. ![]() btw.. was sagt mein OTTB kannst du es rendern ? Knipsen? Du solltest eigentlich ein schwarzes Window erhalten wenn du es aufnimmst. OTTB ist ein Layered Window. gruss |
AW: Bildschirmfoto knipst nicht alles
Ja danke nein, ich fange jetzt bestimmt nicht an mich in layered reinzulesen nur damit ich ein example erschaffen kann das ich nicht knipsen kann.
Zu OTTB, genau das war so ein example was ich meinte :thumb::thumb::thumb: PrintWindow generiert ein schwarzes Bild, vollkommen Richtig! Danke Emil! Nun hab ich ja eine "Anti-Knips" Applikation, sobald ich das gelöst habe meld ich wieder.... kann dauern -_- Am Rande, meine profi Screenshot-Freeware-Software knipst das Perfekt ohne Desktop Hintergrund ich schau mal ob ich heraus finde wie die das machen, ich leg jetzt auf:coder2: edit Das Freeware Tool gibts ![]() |
AW: Bildschirmfoto knipst nicht alles
Zitat:
Alle Fenster die DirectX, LayeredWindow, Tollbars usw.. mit LayeredWindow verwenden werden dir an den stellen wo sie Transparent sind ein schwarzes Feld zeigen da kannst du nichts machen. Vergiss die API PrintWindow einfach ;) (Zumindest unter Win7) danach "Win7 up" können auch Child Windows Transparent gesetzt werden und das ganze könnte sich anders verhalten ;) Ich mache lang genug mit Grafik da kannst du mir ruhig glauben es ist vertane Liebesmüh damit weiter rumzuspielen. Zitat:
Zu dem habe ich SnagIt gekauft das tut alles was ich will. Trotzdem Danke. gruss |
AW: Bildschirmfoto knipst nicht alles
Ja klar, ohne die Print Api, nun dank Example weiß ich was Du meintest und kann es Nachvollziehen, ich werds schon irgendwie hinbekommen, hab ja nun ein neues Forschungsprojekt "Knipps mit Delphi OTTB", ein paar Ansätze habe ich dazu schon aber die sind dann nicht so effektiv. (über OpenGL/DirectX Api Bildpuffer eventuell...)
Bei Erfolgen melde ich mich Zurück. Ps: Das Tool hat einen UnInstaller und sollte mir nur als Beispiel dienen das es klappt. |
AW: Bildschirmfoto knipst nicht alles
Habs geschafft! Das einzige was nicht klappt ist das der Desktop Hintergrund nicht rausgefiltert wird, ansonsten klappts mit dem OTTB zu 100%, also Anti-Knips ist nicht mehr. Ich bin übers Canvas direkt rangegangen.
Ich teste nun wieder den Rest Test-Parcour durch, bei Erfolg oder Interesse Post ich mein noch nicht ganz fertigen Code. edit Erste Zwischenbilanz, es knippst OpenGL/DirectX (!), ich teste mal weiter aber ich glaube das kann ich mir sparen. |
AW: Bildschirmfoto knipst nicht alles
Wie "Hintergrund herausfiltern"? Wenn du mit dem DC von dem betreffenden Fenster arbeitest, sollte auch nur das Fenster in das Bitmap kopiert werden.
|
AW: Bildschirmfoto knipst nicht alles
Hallo Luckie,
Ich seh schon, Du hast mein Trick noch nicht durchschaut obwohl der Hinweis mit Hintergrund recht deutlich war. Um tatsächlich alles zu knipsen =
Delphi-Quellcode:
. Arbeite ich mit DC von Fenster hab ich Probleme, siehe erste Post.
DC:=GetDC(0);
Deswegen kann ich tatsächlich nun alles knipsen, mit dem Hintergrund Nachteil aber alles. Auch ein AnimateWindow kann nichts dagegen machen. Alle meine Tests wurden mehr oder minder gut bestanden. Die minder guten Dinge sind noch bugs wo mir grad der Kopf dröhnt da ich komplett bei null mal wieder angefangen habe um mir dieses Anti-Knips-Egal Konzept zu entwickeln. edit Der erste Satz soll nicht hochnäsig oder angeberisch sein, Bitte Entschuldige mein Schreibstil ps: über
Delphi-Quellcode:
hol ich mir den Inhalt, die Positionen dafür ermittle auf ähnlich weise wie im ersten Post, diesmal habe ich aber alle Schritte getrennt.
CopyRect()
Über die Unit Clipbrd glaube ich könnte man auch gehen um ans Ziel zu gelangen, da es jetzt im Grunde schon Einsatzbereit ist habe ich da noch nicht weiter nachgeforscht. Ich überdenke mir gerade nochmal alles, ich glaube ich habe im Kopf schon die Lösung und muss Sie nur noch umsetzen. Die Theorie: Da ich jetzt weiß wie ich an Bild-Daten gelange, per
Delphi-Quellcode:
,
DC:=GetDC(0);
und den ganzen anderen Rest der dazu gehört bis das Image gespeichert ist (erste Post verrät fast alles), Hier meine Idee, Da wo ich knipsen will male ich kompletten Bereich Schwarz, dann hole ich mir Ziel App wieder in den Vordergrund, knipse und kille schwarzes Rechteck, so müsste es funktionieren denke ich. |
AW: Bildschirmfoto knipst nicht alles
Zitat:
Zitat:
So kannst du sehen wo du dich gerade befindest. Siehe Pic. Aber! Wie Luckie schon sagt! Überdenke nochmal dein Konzept.
Delphi-Quellcode:
Was glaubst du wessen DC du da in Anspruch nimmst?
DC:=GetDC(0);
Und warum du den Desktop nicht ignorieren kannst bei der Aufnahme? Zudem GetDC(0) für eine ScreenShot Anwendung ist eine schlechte Wahl. Mitunter wäre es ein einfaches.. dir das Bitmap direkt vom DC zu holen ohne den ganzen Umweg über CopyRect, ClipBord, Hintergrund schwarz machen und die anderen Sache die du dir so ausdenkst. Und wenn du Qualität haben möchtest kommst du nicht Drumherum vorher ein 32BItDC zu erstelle. Es ich schön mit unter vorgefertigte Schnipsel zu verwenden und einfach... aber du lernst nichts dabei. Du weist nicht warum mache ich dies oder das welche Auswirkung kann dies oder jenes haben. Sorry du stellst hier fragen bekommst Antworten aber du Entwickelst dein Projekt nicht auf dieser Basis und du verstehst nicht wirklich was du da tust oder hast du dir jede Definition, Funktion, Variable einmal angeschaut welche Auswirkung diese haben? Wenn ja dann habe ich nichts gesagt. Wenn nicht tja dann hast du nichts dabei gelernt. Beim ganzen Thread habe ich eigentlich nicht verstanden um was es dir eigentlich geht. Du willst den Desktop knipsen ok.. kein Problem das ist ein 4 Zeiler an Code. Du willst den Clientbereich knipsen? Ist auch nicht mehr an aufwand. Insgesamt verstehe ich deine Probleme nicht. gruss |
AW: Bildschirmfoto knipst nicht alles
Zitat:
Zitat:
Zitat:
Zitat:
Hab Verstanden was Du meinst aber da bin ich dann wieder beim Source von Post #1 was ja nicht klappt. Falls selber noch nicht getestet, beim Post #1 ist die Umsetzung so: Kompiliere und starte es, öffne das Fenster was Du knipsen willst, zurück zu mein Ding und auf knipsen klicken. Ja sehr unzuverlässig aber nun habe ich eine Prozessliste, sehr zuverlässig. Zitat:
Unabhängig ob das Fenster irgendwelche Tricks anwendet so das ein Knipsen erschwert wird. Beispiele: Dein OTTB Layered oder was auch immer für DirectX/OpenGL Overlays, alles soll klappen. Bin bald fertig. Ps: Ja das Du das was ich in sehr vielen Zeilen mit nur einem Befehl hinbekommst weil Du weißt was Du tust ist mir klar, da mir die Erfahrung fehlt und ich keine Ahnung davon habe mache ich es nunmal so wie ich es mache. Ich finde es für mich da es Neuland ist ein nettes Freizeitprojekt. edit Ps: Frage: Wenn Du selbst Dein OTTB mit deiner selbstgebackenen Knipsmethode knipst und da nen Rahmen malst, wo issn der Rahmen dann? |
AW: Bildschirmfoto knipst nicht alles
Zitat:
Und was machst du nun wenn du mehrere Monitore verwendest du glaubst das es dann immer noch funktioniert? Wenn du also mit mehreren Monitoren arbeitern willst solltest du das verwenden. ![]() Zitat:
Zitat:
Es reicht wenn man sich das Bitmap direkt vom DC holt Da muss man nix rausfiltern.
Delphi-Quellcode:
HBitmap(GetCurrentObject(DC, OBJ_BITMAP));
Zitat:
1. GetDesktopWindow 2. GetDC\CreateDC 3. GetWindowRect 4. StretchBlt via BitBlt. 5. ReleaseDC Das knipst alles incl. die Videos in meinem Player(DirectX) und Layered Windows. Zitat:
Zitat:
Sorry! Ich wollte dir nicht zu nahe treten, mach wie du willst. Bin erste mal raus. (Dachte du wolltest etwas dabei lernen) gruss |
AW: Bildschirmfoto knipst nicht alles
Och menno, Ok, Danke auf jeden fall für die korrekte heran gehens weise, ich versuche es so wie Du es beschreibst umzusetzen.
edit Ich habe gerade dein update mit Bild gesehen, da ist doch auch Desktop Hintergrund, das meinte ich mit rausfiltern bei obiger Aussage. |
AW: Bildschirmfoto knipst nicht alles
Zitat:
Dann hole dir doch direkt das Bitmap vom DC was gibt es da raus zu filtern. Habe dir doch gezeigt wie es geht.
Delphi-Quellcode:
HBitmap(GetCurrentObject(DC, OBJ_BITMAP));
Aber ehrlich? Frage mich was es dir bringen soll ob ich nun den Hintergrund des Desktop im Bereich von OTTB sehe oder aber nachher anstelle dessen einen weißen\schwarzen oder was auch immer Hintergrund habe ist gehüpft wie gesprungen. Das einzige was du dann noch machen könntest das Bild als PNG kopieren und den schwarzen\weißen Hintergrund dann ausschneidest. Aber das ist wieder höhere Mathematik :) gruss |
AW: Bildschirmfoto knipst nicht alles
Zitat:
Danke nochmals!:thumb: |
AW: Bildschirmfoto knipst nicht alles
emm
Zitat:
Delphi-Quellcode:
BitBlt(Bmp.Canvas.Handle, 0, 0, Width, Height, DC, 0, 0, SRCCOPY or CAPTUREBLT);
mit
Delphi-Quellcode:
Grüsse Mavarik
Const
CAPTUREBLT = $40000000; |
AW: Bildschirmfoto knipst nicht alles
Zitat:
Zitat:
Habe ich noch nie verwendet. ![]() Denke das kann man getrost weglassen. gruss |
AW: Bildschirmfoto knipst nicht alles
Zitat:
Keine Ahnung ob das auch für andere Inhalte gilt, hab ich noch nicht getestet. Mavarik |
AW: Bildschirmfoto knipst nicht alles
Zitat:
Aber bei mir werden die auch ohne diese Flag aufgenommen.. siehe Shot. Nun gut versuchen kann er es ja mal.. Nachteile wird er dadurch nicht habe. Danke! gruss |
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:26 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz