【问题标题】:How to prevent screenshot from program如何防止程序截图
【发布时间】:2011-09-27 02:18:20
【问题描述】:

有没有办法保护程序不被用户截取任何形式的屏幕截图?例如,当用户按下键盘上的 Print Screen 键时,我不希望我的程序出现在屏幕截图中。是否可以在程序中以某种方式进行键预览,以最小化用户按 Print Screen 键时的程序?

我想要这个用于 C# WinForms。

附:我知道这有点愚蠢,用户可以拍摄屏幕的真实照片:P 但只是我的好奇心!

【问题讨论】:

    标签: c# winforms onkeypress keypreview


    【解决方案1】:

    无法停止截屏。

    【讨论】:

    • 虽然SetWindowDisplayAffinity 让它变得更加困难。
    • @RaymondChen 你这个懒虫——甚至不会链接到你自己的博客文章。让我为你冷嘲热讽:blogs.msdn.com/b/oldnewthing/archive/2013/06/03/10422964.aspx
    • @x0n 首先,SO 对非现场页面的链接不满意。其次,我没有时光机。 (2012 年的评论怎么会链接到 2013 年的博文?)
    • @RaymondChen LOL,对不起,我没有注意到日期差异。认为我被骂了。
    • @x0n 不是骂人的意思。只是解释。对不起。
    【解决方案2】:

    我想不出任何方法来阻止确定的应用程序捕获您的应用程序的屏幕输出。屏幕可以通过 PrintScreen 键来捕获。在 Windows 中,几乎任何应用程序都可以通过从 DC 句柄零读取来读取整个屏幕设备表面。

    【讨论】:

      【解决方案3】:

      我现在唯一能想到的就是使用video overlay 来绘制应用程序的内容(即类似于classiv 视频播放器)。这样,通常的屏幕截图程序只会得到一个空白/几乎是黑色的图像。但这仍然不是 100% 安全的方式。通过软件的所有东西都可以以某种方式被操纵/抓取。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-04-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-08-04
        • 2021-06-17
        • 1970-01-01
        相关资源
        最近更新 更多