Detect when users take screenshots of my program

前端 未结 10 1455
猫巷女王i
猫巷女王i 2020-12-09 13:38

I\'m writing a Windows application. How can I tell when a screenshot is being taken of it? I read about how to detect the hotkey being pressed, but I\'m more worried about t

相关标签:
10条回答
  • 2020-12-09 14:15

    What if I use a video camera? What if I capture the video coming between the computer and the monitor?

    I'll be surprised to learn there's any practical way to do this.

    0 讨论(0)
  • 2020-12-09 14:16

    The way I usually take screenshots (from C#) is by calling BitBlt, which is the basis of a lot of screen painting. Not sure how you'd intercept calls to it in any meaningful way, since probably every program on the system uses it at a low level.

    0 讨论(0)
  • 2020-12-09 14:19

    First, comments about using a virtual machine are completely pointless -- it is much easier to detect windows running under a virtualizer than to detect a screenshot being taken.

    A good way to make screenshots difficult would be to rewrite your program to run in full screen mode under some ancestral dos extender.

    A good way to ban 95% of users who ever attempted to take a screenshot is to display a huge flashing banner on startup ("screenshots prohibited! you be banned!"), and detect user pressing PrtScrn during the following 15 seconds.

    0 讨论(0)
  • 2020-12-09 14:19

    there is one way that i think might stop it. learn about the technology that blurs a graphical display when it is duplicated for example.

    screenshot, photographed by digital camera screenshot from virtual os.

    play with it , who knows you might invent something that will make u millions.

    0 讨论(0)
提交回复
热议问题