Delphi-PRAXiS
Seite 3 von 4     123 4      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Screenshot verhindern (https://www.delphipraxis.net/57438-screenshot-verhindern.html)

perle 21. Nov 2005 16:04

Re: Screenshot verhindern
 
wollte das nicht unter den Tisch fallen lassen :

Zitat:

It's quite hard to block screen shotting without also blocking some needed functionality. There will probably be good reasons why some programs need to get a DC to the whole screen. So you can't generally block any GetDC requests for the whole screen. And once a program has a valid DC for the whole screen, it can use any GDI function with it. So you'd have to hook all those GDI functions and compare the DC handle with the one GetDC returned (as uall said). That's really an awful lot of work and it may be hard to realize in a safe and stable way. Still some programs might find ways around your block by maybe trying to copy DC handles (don't know whether that's possible) or such stuff. Also you'd be lost if a DC handle was already created before your API hook got installed.

ichbins 21. Nov 2005 16:42

Re: Screenshot verhindern
 
Age of Empires macht es genau so dass es nur Teile des Bildes Darstellt.

@Oxmyx: versuch doch mal einen Screenshot von Age of Empires zu machen. Oder Jurassic Park Operation Genesis.

@perle: englisch :wall: aber gegen eine Virtual Workstation hilft das nix.

Daniel G 21. Nov 2005 17:14

Re: Screenshot verhindern
 
Könntest du nicht einfach die "Print Screen" bzw. "Druck" - Taste hooken, wenn dein Programm gestartet wird? Das schützt schonmal vor dem OttoNormalBenutzer.

//Edit: Vergiss meinen Satz....

cruso 21. Nov 2005 17:43

Re: Screenshot verhindern
 
Gibt es da vllt ne API-Funktion?

rossinieee 21. Nov 2005 19:43

Re: Screenshot verhindern
 
also du könntest immer die zwischenablage durch ein anderes bild ersetzen, aber ich glaube nicht, dass du das willst.
Dann kannst du Bilder/Videos direkt an die GrakaStreamen. So macht's z.b. mein TV-Tool, dann ist das Feld schwarz im Screenshot. Aber da hast du in ner VM das Bild immernoch.
In Delphi kann man doch die Tastenanschläge abfangen, kannst doch machen, dass das Bild in der Zeit ausgeblendet wird wenn die Taste gedrückt wird oder nicht?

Tubos 21. Nov 2005 19:45

Re: Screenshot verhindern
 
Zitat:

In Delphi kann man doch die Tastenanschläge abfangen, kannst doch machen, dass das Bild in der Zeit ausgeblendet wird wenn die Taste gedrückt wird oder nicht?
Nein.
Es gibt Screenshot-Programme, wo man keine Tastenkombination drücken muss.

Luckie 21. Nov 2005 20:06

Re: Screenshot verhindern
 
Und wenn du alles fertig hast, hole ich es mir mit dem ResHacker aus der Exe. ;)

Tubos 21. Nov 2005 20:25

Re: Screenshot verhindern
 
Zitat:

Und wenn du alles fertig hast, hole ich es mir mit dem ResHacker aus der Exe.
Er meinte, das Video wird übers Internet gesendet.
Hindert aber keinen daran den Netzwerkverkehr abzufangen und -speichern oder das Bild aus dem RAM des Programmes auszulesen.

rossinieee 21. Nov 2005 20:27

Re: Screenshot verhindern
 
was willst du denn so schützen?
Dann muss man sich ja richtig ran hängen.
Also man kannst nicht verhindern, aber erheblich erschweren.

axelf98 21. Nov 2005 21:04

Re: Screenshot verhindern
 
Zitat:

Zitat von Andreas2k
Und wie sieht es mit overlays aus? Ich erinnere mich das man z.B. vom Mediaplayer kein Screenshot vom geladenem Video machen kann. Man bekommt nur ein schwarzes Bild auch wenn man das Video vorher pausiert.

Es gibt da zwar auch tools die Overlays grabben kann die hat aber otto normalverbraucher i.d.R. nicht.

Ja, die Overlays verhindern ein einfaches PrintScreen. Aber es gibt einen einfachen, aber wirkungsvollen Weg, dies zu umgehen:
Wenn man 2 Videos gleichzeitig startet (in 2 versch. Mediaplayern) und eines oder beide pausiert, dann kann die Grafikkarte das Videobild nicht mehr in e i n e m Overlay verstecken... In dieser Situation kann man mit PrintScreen das Videobild einfangen!


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:56 Uhr.
Seite 3 von 4     123 4      

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