AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Screenshot like Snipping Tool

Ein Thema von Youuuu · begonnen am 14. Okt 2022 · letzter Beitrag vom 18. Okt 2022
Antwort Antwort
Seite 3 von 5     123 45      
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.580 Beiträge
 
Delphi 11 Alexandria
 
#21

AW: Screenshot like Snipping Tool

  Alt 15. Okt 2022, 17:20
Es gibt auch Gründe für die Nutzung der neuen APIs. Wenn man von hardwarebeschleunigten Fensterinhalten wie Spielen oder Videos Screenshots machen möchte, kommt man mit den herkömmlichen Funktionen nicht weit.

Solange man das nicht braucht, sehe ich allerdings keinen Grund, die bisherigen Funktionen nicht mehr privat zu verwenden. Denn Microsoft empfiehlt zwar schon seit 10 Jahren, diese APIs in neuen Anwendungen nicht mehr zu verwenden, aber sie sind so verbreitet, dass sie so bald nicht einfach entfernt werden.

Für neue Anwendungen im beruflichen Kontext sieht das natürlich anders aus. Da sollte man natürlich eher zukunftssicher planen.
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
johndoe049

Registriert seit: 22. Okt 2006
167 Beiträge
 
#22

AW: Screenshot like Snipping Tool

  Alt 15. Okt 2022, 17:21
Mal so in die Runde gefragt:

Funktioniert da auch wenn SetWindowDisplayAffinity mit WDA_EXCLUDEFROMCAPTURE definiert ist?
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.031 Beiträge
 
Delphi 12 Athens
 
#23

AW: Screenshot like Snipping Tool

  Alt 15. Okt 2022, 17:37
SetWindowDisplayAffinity/WDA_MONITOR/WDA_EXCLUDEFROMCAPTURE gehört zum DesktopWindowManager, also wird es wor allem wohl nur von dessen APIs verwendet/beachtet.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
johndoe049

Registriert seit: 22. Okt 2006
167 Beiträge
 
#24

AW: Screenshot like Snipping Tool

  Alt 15. Okt 2022, 18:07
SetWindowDisplayAffinity/WDA_MONITOR/WDA_EXCLUDEFROMCAPTURE gehört zum DesktopWindowManager, also wird es wor allem wohl nur von dessen APIs verwendet/beachtet.
*** OFFTPIC ***
Gibt es was besseres, um Screenshots, remote, etc. zu blockieren?

Hab da einen Kunden, dessen Datenschutzbeauftragter nicht müde wird neue Anforderungen sich auszudenken.
*** OFFTPIC ***
  Mit Zitat antworten Zitat
Andreas13

Registriert seit: 14. Okt 2006
Ort: Nürnberg
719 Beiträge
 
Delphi XE5 Professional
 
#25

AW: Screenshot like Snipping Tool

  Alt 15. Okt 2022, 18:25
Bitte fair bleiben und KodeZwerg weder beleidigen noch seine selbstlose Hilfsbereitschaft niedermachen!
Wir sollten ihm für sein Engagement vielmehr dankbar sein!
Grüße, Andreas
Grüße, Andreas
Wenn man seinem Nächsten einen steilen Berg hinaufhilft, kommt man selbst dem Gipfel näher. (John C. Cornelius)
  Mit Zitat antworten Zitat
Benutzerbild von blawen
blawen

Registriert seit: 1. Dez 2003
Ort: Luterbach (CH)
677 Beiträge
 
Delphi 12 Athens
 
#26

AW: Screenshot like Snipping Tool

  Alt 15. Okt 2022, 18:40
Bitte fair bleiben und KodeZwerg weder beleidigen noch seine selbstlose Hilfsbereitschaft niedermachen!
Wir sollten ihm für sein Engagement vielmehr dankbar sein!
Grüße, Andreas
Roland
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.031 Beiträge
 
Delphi 12 Athens
 
#27

AW: Screenshot like Snipping Tool

  Alt 15. Okt 2022, 18:50
Zitat:
Gibt es was besseres, um Screenshots, remote, etc. zu blockieren?
Das ist z.B. ein guter Grund, warum irgendwann die alten API blockiert/entfernt werden, wenn sie derartige Sicherheitsmechianismen umgehen.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#28

AW: Screenshot like Snipping Tool

  Alt 15. Okt 2022, 21:49
Wenn jemand bereit wäre diesen Quelltext nach DWM zu portieren wäre ich sehr dankbar.
Auch Verzeihung das ich vorhin etwas angepi.... war
Ich habe mir das mit DWM hier angeschaut und werde daraus nicht wirklich schlau.
Ich habe die in meiner zugrunde liegende "Schnappschuss" Methode nun isoliert so das hoffentlich klar sein sollte worum es mir geht, angestaubte Technik zu erneuern.
Wenn meine Vorgehensweise per left, top, right, bottom falsch ist im Umgang mit DWM dann bitte höflichst um Entschuldigung, da spricht dann meine Unwissenheit aus mir.
Delphi-Quellcode:
procedure TkzScreenShot.ScreenShot(const ALeft: Integer; const ATop: Integer; const ARight: Integer; const ABottom: Integer);
var
  ShotDC: HDC;
begin
  FRect.Left := ALeft;
  FRect.Top := ATop;
  FRect.Right := ARight;
  FRect.Bottom := ABottom;
  FImageWidth := FRect.Right - FRect.Left;
  FImageHeight := FRect.Bottom - FRect.Top;
  ShotDC := GetDCEx(GetDesktopWindow, 0, DCX_WINDOW or DCX_PARENTCLIP or DCX_CLIPSIBLINGS or DCX_CLIPCHILDREN);
  try
    FImage.ReleaseHandle;
    FImage.Width := FImageWidth;
    FImage.Height := FImageHeight;
    FCanvas.Handle := ShotDC;
    if FInverted then
      begin
        FInverted := False;
        FImage.Canvas.CopyMode := cmSrcInvert;
      end
      else
      FImage.Canvas.CopyMode := cmSrcCopy;
    FImage.Canvas.CopyRect(
          Rect(0, 0, FImageWidth, FImageHeight),
          FCanvas,
          Rect(FRect.Left,
               FRect.Top,
               FRect.Right,
               FRect.Bottom));
    FImage.Dormant;
    FImage.FreeImage;
  finally
    ReleaseDC(GetDesktopWindow, ShotDC);
  end;
end;
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.580 Beiträge
 
Delphi 11 Alexandria
 
#29

AW: Screenshot like Snipping Tool

  Alt 15. Okt 2022, 21:56
Das ist leider nicht ganz so simpel wie die Nutzung der GDI-Funktionen. Es gibt aber auch dafür fertige Quelltexte, die sehr einfach zu verwenden sind:
https://www.codeproject.com/Articles...-API-in-Delphi
Damit du und alle anderen euch nicht dort anmelden müsst, könnt ihr auch dieses Repository nutzen:
https://github.com/tothpaul/Delphi/t...DuplicationAPI
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.441 Beiträge
 
Delphi 12 Athens
 
#30

AW: Screenshot like Snipping Tool

  Alt 15. Okt 2022, 22:59
*** OFFTPIC ***
Gibt es was besseres, um Screenshots, remote, etc. zu blockieren?

Hab da einen Kunden, dessen Datenschutzbeauftragter nicht müde wird neue Anforderungen sich auszudenken.
*** OFFTPIC ***
Gib ihm das zu lesen: https://thedailywtf.com/articles/copy-protected
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 5     123 45      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:49 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz