【问题标题】:Is it possible to program an application that won't show up on a print screen?是否可以编写一个不会出现在打印屏幕上的应用程序?
【发布时间】:2011-08-02 16:14:02
【问题描述】:

如果按下 Print Scrn 按钮,然后您打开绘图并 Ctrl V 您的图像,则有一种方法可以使您的程序不存在,或者可能被黑框或其他东西代替。

我没有太多的 Windows 编程经验,这对我来说只是一种好奇心,而不是我实际计划实施的东西。感谢所有反馈。

【问题讨论】:

标签: windows printscreen


【解决方案1】:

您不能从您的 winform 应用程序中禁用 Print Scrn,因为它是一项操作系统功能。 即使有可能有人聪明到可以使用数码相机....

还请看以下内容:

http://social.msdn.microsoft.com/forums/en-US/csharpgeneral/thread/f8fccf61-5132-4037-809d-f22f706e9e7b

【讨论】:

    【解决方案2】:

    简短的回答是没有万无一失的方法。这里有一个不错的讨论:prevent screen capture

    【讨论】:

      【解决方案3】:

      有没有想过为什么 Windows Media player 中的某些视频在您尝试截屏时会捕获黑屏/移动屏幕?它被称为硬件/视频覆盖。

      见:en.wikipedia.org/wiki/Hardware_overlay

      来自维基百科上的文章:

      由于使用了硬件覆盖,屏幕截图程序(用于 例如,一个自动内置到 Windows 中,当 用户按下 PrtSc 键)通常不会捕获内容 出现在硬件覆盖窗口中。而是一个空白区域 捕获仅包含特殊蒙版颜色的内容。这是因为 截屏例程不考虑特殊显存 专用于覆盖的区域 - 它只是捕获共享的主 由软件的图形子系统呈现的屏幕。一些数字 权限管理方案使用硬件覆盖来显示受保护 屏幕上的内容,利用这个怪癖来防止 通过屏幕截图复制受保护的文件[引文 需要]。禁用对覆盖的支持会导致正常 覆盖使用软件回退到共享内存,从而使 截图。

      虽然我不知道如何 来实现这一点,但这当然是可能的。也许它会为您的研究提供一个很好的起点。

      【讨论】:

      • 是的,这将是一种“烦人级别”保护,可能会阻止很多人截屏内容,但不会有效防止大量截屏内容逃逸或随后传播如果人们愿意这样做是有原因的。
      • @Chris 我认为这并不比挂钩和阻止组合键更烦人。这似乎更具侵入性。
      • “烦人”我的意思是,假设计算机服从开发人员而不是它的所有者的整个想法通常只会让老练的用户“烦人”,而不是真正有效地实现开发人员的目标防止某事的目标。商业问题是,是否存在对相同内容的公众需求,以便少数有能力的人泄露内容的结果会传播到整个世界,或者每个用户想要获取的内容是否是个人独特的.
      【解决方案4】:

      是的,这是可能的。

      必须拦截 Print Screen 按键/热键行为(我相信这是 Windows 热键),然后用所需的行为覆盖。由于数据存储在内存中并且可以通过剪贴板访问,因此可以清除数据或首先不启用数据存储。

      如果这是 Windows,则必须使用 Windows API 来完成此操作。

      我相信有几个商业程序具有这种类型的功能来保护计算机上的任何文档或任何数据副本。

      MSDN 在这里描述了打印屏幕热键:

      http://msdn.microsoft.com/en-us/library/ms646279(v=vs.85).aspx

      【讨论】:

        【解决方案5】:

        肯定有一种方法可以做到这一点——这只是一个问题,你需要在堆栈中达到多少才能完成它以及需要多少工作量。

        如果 rootkit 可以隐藏用户空间进程的所有痕迹,那么它们当然可以被编写为拦截打印屏幕并在捕获发生时隐藏一个窗口。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2021-04-21
          • 2019-10-29
          • 2017-07-07
          • 2020-10-26
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多