聊天软件不让截图?我偏要!破解它!

Snipaste效率神器:截图贴图一体化,提升多任务处理与信息参考效率 截图与贴图是数字办公和内容创作中的高频基础操作,其核心原理在于对屏幕视觉信息的捕获与复用。传统流程往往涉及多个独立步骤,导致操作中断与效率瓶颈。通过将截图与贴图功能深度整合,可以实现信息的即时悬浮与参考,其技术价值在于打破了应用窗口的壁垒,创建了一个临时的、可交互的视觉信息层。这一特性在需要频繁进行跨窗口信息比对、内容参考或临时记录的工程实践与学习场景中尤为关键,例如UI设计对比、代码编写参考、文档撰写等。Snipaste作为该领域的代表性工具,通过智能元素捕捉、贴图置顶与穿透、以及高效快捷键配置,将这一工 阅读详情

前几天,我的逆向学习二群有小伙伴反映:他手里有个聊天软件,每次一截图,聊天窗口就不见了,甚至按键盘上的PrtSc截图键截下来都没有这个聊天窗口的内容,他想尽各种办法,就是截不了这个软件的图。

9b10fd5267bc9e95ded2d64dcc8c2d31.png

听他这么一描述,我还有些好奇了起来。首先怀疑的是这软件是不是安装了什么消息钩子,通过监听键盘按键,禁止截图,于是有人建议他换个快捷键,结果发现也不行:

406aa3dee5573fdc04b6b9355dc3f82c.png

于是我建议让他手动点击微信的截图按钮,不要敲键盘,结果还是不行:

422b793f2d26e5da11c9e593367eb1f0.png

有群友建议他使用录屏功能,直接录视频,发现居然仍然不行!

这一下挑起了我的兴趣,这软件还真有两下子啊。

基于这么多操作都不行,于是我怀疑是不是这软件安装了什么内核驱动,在内核里面拦截捕捉屏幕像素内容的操作,于是建议用PChunter查一下:

545eb1187a899272edd3a30fe1d091a3.png

鉴于这位小伙伴不是太会操作,于是我找他要到了这个聊天软件的安装包,自己安装了来研究。结果发现居然啥驱动都没装!也没有什么可疑的钩子行为。甚至连软件的登录界面都截不了图!

这一下让我皱眉头了,一个普通应用程序,它是咋做到这一切的?难道是有什么我不知道的操作?【本文来自微信公众号:轩辕的编程宇宙,未经许可,禁止搬运】

于是我打开ChatGPT,把上面的现象给它描述了一下,他告诉了我一个系统API,这个API可以办到这样的效果,这个API就是:SetWindowDisplayAffinity

5a025cd17b8ca30a92353601b58237c7.png

根据MSDN的描述,这个函数可以用来设置窗口不被任何屏幕录制行为捕获:

898d43cb88c64d526cdbef07431abb37.png

为了验证这聊天软件是不是通过这个API实现的,我用APImonitor抓了一下它启动的过程,果然发现了对这个函数的调用,而且第二个参数传递的值正是上面的0x11,也就是17。

11f146b9969c49d4877beea59eb389c8.png

问题搞清楚了,想要破解就好办了,再调用一下这个函数,把第二个参数设置为0,解除对窗口的保护就好了。

不过要注意,根据MSDN的描述,调用这个函数必须要窗口属于当前进程才行,无法操作别的进程的窗口。所以我们得让那个聊天软件自己去调用这个函数解除它的窗口保护。【本文来自微信公众号:轩辕的编程宇宙,未经许可,禁止搬运】

那如何让聊天软件主动去干这件事呢?用我们第26课学到的DLL注入就好了:我们编写一个DLL,在DLL里面调用这个函数解除窗口保护,然后把DLL注入到目标聊天软件进程中就好了。

我们先用Spy++看一下要解除保护的窗口,通过上面APImonitor中抓到的两次调用SetWindowDisplayAffinity函数所设置的两个窗口句柄值在Spy++中找到这两个窗口:

ea32f6425d8628708a3db6438a1aad1b.png

查看两个窗口的窗口类和窗口名称,接下来,写代码解除保护:

db828f66b60054fcf4c46470b1094931.png

在DLL加载的时候就执行上述动作:

BOOL APIENTRY DllMain(HMODULE hModule,
 DWORD  ul_reason_for_call,
 LPVOID lpReserved
)
{
    // 注释:本代码来自公众号:轩辕的编程宇宙
 switch (ul_reason_for_call)
 {
 case DLL_PROCESS_ATTACH:
  MessageBoxA(NULL, 'dll注入成功!', 'CaptureCrack', MB_OK);
  Work();
  break;
 case DLL_THREAD_ATTACH:
 case DLL_THREAD_DETACH:
 case DLL_PROCESS_DETACH:
  break;
 }
 return TRUE;
}

接下来,把DLL注入进去:

int main(int argc, char* argv[])
{
    // 注释:本代码来自公众号:轩辕的编程宇宙
 DWORD dwProcessId = 4092; // 需要自己找到对应进程ID
 LPVOID pfnLoadLibraryA = GetFunctionAddress(dwProcessId, 'kernel32.dll', 'LoadLibraryA');


 // 2、拿到进程的句柄
 HANDLE hProcess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, dwProcessId);
 if (!hProcess) {
  printf('can not open process!\n');
  return 0;
 }

 // 3、在进程中分配内存
 LPVOID address = VirtualAllocEx(hProcess, NULL, 100, MEM_RESERVE | MEM_COMMIT, PAGE_EXECUTE_READWRITE);
 if (!address) {
  printf('VirtualAllocEx failed!\n');
  return 0;
 }

 // 4、向分配到的内存中写入要注入的DLL路径,作为参数
 SIZE_T writeBytes = 0;
 const char* dllPath = 'CaptureCrack.dll';
 if (!WriteProcessMemory(hProcess, address, dllPath, strlen(dllPath) + 1, &writeBytes)) {
  printf('WriteProcessMemory failed!\n');
  return 0;
 }


 // 5、创建远程线程
 HANDLE hThread = CreateRemoteThread(hProcess, NULL, 0, (LPTHREAD_START_ROUTINE)pfnLoadLibraryA, address, NULL, NULL);
 if (!hThread) {
  printf('CreateRemoteThread failed!\n');
  return 0;
 }

 WaitForSingleObject(hThread, INFINITE);

 CloseHandle(hProcess);
 CloseHandle(hThread);

 return 0;
}

最后,执行成功,终于可以截图了:

39c66c0fb51ff80c2f50a8dd5ce753d6.png

上面的办法,不是个长久之计,因为程序重启后,又得要重新注入来改。挺麻烦的,那有没有一劳永逸的办法呢?

还真有!直接逆向分析找到程序调用SetWindowDisplayAffinity函数的地方,找到第二个参数传参的指令,直接修改exe文件中的指令参数,把它改为0,保存exe文件就好了!

今天的分享就是这样了,如果觉得有用的话,欢迎分享评论转发支持一下~

Windows截图效率革命:从系统工具到Snipaste的进阶工作流 屏幕截图是计算机图形界面交互的基础功能,其核心原理是通过系统API捕获当前显示缓冲区的像素数据。这项技术不仅实现了信息的快速可视化记录,更在提升人机交互效率方面具有重要价值。在软件开发、技术文档编写和日常办公协作等应用场景中,高效的截图与标注工作流能显著降低任务切换的认知负荷。本文聚焦于Windows平台,深入对比系统原生工具与第三方效率神器Snipaste的功能差异,并探讨如何将截图动作融入自动化流程。通过解析Snipaste的贴图功能和自动化脚本集成,帮助开发者构建从捕捉、处理到分享的无缝体验,实现真正 阅读详情

相关推荐

别再手动拼图了!用 FireShot 一键搞定网页长截图,教程+下载地址全在这!

网页太长截图截不全?还在用多张图拼接?本文教你如何使用火遍全球的浏览器效率神器 FireShot 插件,实现一键滚动截屏。无需任何复杂的修图软件,FireShot 即可完美捕捉整个页面的 DOM 树,支持一键将长网页保存为高清图片或 PDF 格式。文章内含详细的图文操作流程(含捕捉整个页面、选定区域等模式)、突破浏览器限制的进阶方案,以及各主流浏览器(Chrome、Edge、Firefox 等)的FireShot 下载地址。掌握这个技巧,让你的网页收集和文档归档效率提升十倍!

qq_43201350的博客 99

电脑表现截屏被制止了怎样处理?(截图黑屏windows10)

无方法解决由于有些电脑或者软件配置了截屏的限度,能够实验如下法子解决:1.应用快捷键Ctrl+Print Screen或者Alt + Print Screen举行截屏2.应用Windows体系自带的截屏东西Snipping Tool举行截屏3.应用第三方截屏软件,如GreenShot、Snagit等。截屏限度可能会给事情以及学习带来未便,但能够经由过程多种法子举行解决,抉择合适本人的法子能够进步效率以及便当性。更多资源,全网学习教程(图片来历网络,侵删)

2401_84764874的博客 1万+

突破截屏键被屏蔽的小软件,可实现截屏功能

截屏键被屏蔽了或者坏了的情况下可以使用本软件,即可用scroll Lock键代替截屏键

APP限制录屏怎么办?如何绕过APP录屏限制和截图限制-支持安卓和IOS

APP限制录屏怎么办?如何绕过APP录屏限制和截图限制。 互联网越来越发达,衍生了很多形形色色的app,商家为了防止app资源被传播,因此在用户截取屏幕操作或者录屏操作时会警告用户并前会禁止用户的这一操作行为。 那么有没有办法解决呢?有人说可以用投屏、将APP所在的设备投屏到电脑或者其他可用设备然后再接收投屏的设备录制,其实你想到的平台也想到了哈。不仅会限制投屏,甚至有些还会限制使用模拟器,所以想使用模拟器的也要考虑你这个app是否支持在模拟器上运行。那有没有最佳的解决方案,答案是有!且看下面的方案...

tom的博客 8万+

Material Studio中分子动力学模拟得到密度density和溶解度参数

使用sketh工具画出全原子分子,以异辛烷为例子。

handsome213的博客 7298

C#上位机+YOLO工业视觉全实战:从ONNX部署到产线缺陷检测落地(2026年工业级实战指南)

在2026年,工业视觉落地的核心挑战不是“能不能做”,而是“能不能在产线实时跑起来C#为何成为最优解?

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 724

安卓APP限制截屏录屏解决方案

安卓APP限制截屏录屏解决方案

wangluonanhai的专栏 2万+

flowable工作流看这一篇就够了(基础篇)

接下来我们构建一个非常简单的请假流程,Flowable引擎需要流程定义为BPMN 2.0格式,这是一个业界广泛接受的XML标准。在Flowable术语中,我们将其称为一个流程定义(process definition)。一个流程定义可以启动多个流程实例(process instance)。流程定义可以看做是重复执行流程的蓝图。在这个例子中,流程定义定义了请假的各个步骤,而一个流程实例对应某个雇员提出的一个请假申请。

qq_38196449的博客 2万+

完全反截屏

把一些高手的语录总结一下:   控制所有截屏软件肯定是不可能的。但可以用相当小的代价来禁止尽可能多的截屏。 分析截屏软件的行为,可得出截屏基本有两种方式。 1. 通过剪贴板 2. 直接截取屏幕中的某一部分保存成图像文件 针对以上两种可做如下的防护: 1. 监控剪贴板变化 (SetClipboardViewer) ,发现剪贴板发生变化后,看剪贴板中是否有图片,如果有,清空它。 2

flyingleo1981的专栏 1万+

硬件学习手册【总目录】

欢迎大家来到《硬件学习手册》,专栏主要包括 《硬件经验手册》《电子元器件器件手册》《PCB手册》《CPU手册》《元器件选型手册》五个分册。在开始专栏的更新前,博主先列出专栏的大纲,以供大家参考。大家直接点击大纲中的蓝色标题即可轻松传送。

fydar的博客 5827

UG二次开发GRIP创建drill工序

UG二次开发GRIP创建drill工序

qq285503851的博客 1687

电脑解除截图限制工具,而且可以防止截图

一款主打截图权限管理的工具,既能帮你突破部分场景下的截图限制,也能根据需求为特定内容设置截图防护,比如在查看加密文档、在线课程视频时,常遇到无法截图保存关键信息的情况,或是需要保护自己分享的内容不被随意截图传播,这款工具就能派上用场。针对部分在线平台、加密文档、视频播放窗口等设置了截图屏蔽的场景,可绕过限制实现正常截图,支持对单个窗口或特定区域进行精准截图,保留画面清晰度。WDA_EXLUDEFROMMONITOR(截图时变透明)WDA_MONITORE(截图时便黑屏)WDA_NONE(正常)

codermufeng的博客 2482

软考中级-软件设计师 Python基础

软考中级-软件设计师 Python知识点整理

片言可决讼,半纸能缚龙 3633

2024年企业最担心的是什么?隐私?数据安全?企业聊天软件?

2024年企业最担心的核心问题之一是隐私与数据安全。随着网络技术的不断发展,数据泄露和黑客攻击的风险日益增加,企业必须采取有效的措施来保护用户数据和隐私。同时,企业聊天软件如飞信钉、喧喧等新型通信工具的普及和安全性问题也是企业关注的重点之一。其他问题如市场竞争、经济环境等同样不可忽视,但相较于隐私与数据安全可能略显次要。

zentao_pms的博客 2032

《驾驭你的AI同事:WorkBuddy深度精通》027:11.1 私有知识库接入

11.1 私有知识库接入 —— 《驾驭你的AI同事:WorkBuddy深度精通》系列图文教程,配图已统一为规范示意图。

LuckyHanMo的博客 123

【UML】-- 期末试题题库含答案(各章题目、选择题、填空题、简答题、画图题)

每章都有对应的题目和答案,选择题,填空简答,大题,答案已标红,方便大家观看

个人博客 1万+

Snipaste:把截图钉在屏幕上,让开发效率肉眼可见提升

日常开发中,截图工具看似简单,却是高频使用的生产力工具。它的核心价值不在于保存图片,而在于如何让截取的信息无缝融入工作流。Snipaste通过贴图机制将截图变为悬浮于所有窗口之上的便利贴,配合取色器、历史记录和轻量标注,把“看图-对照-操作”的路径压缩到极致。对于需要频繁切换窗口的开发者,贴图能减少上下文切换带来的认知负担;对于UI联调或文档整理,像素级取色和即时标注让沟通更精准。这类轻量效率工具正在成为开发者工作流中不可忽略的一环,而Snipaste正是其中的典型代表,兼顾免费、干净与低资源占用。从快捷键

weixin_28630185的博客 219

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

Snipaste截图贴图工具:从下载安装到高效工作流全解析

截图与贴图是屏幕信息处理中的基础操作,其核心原理在于将屏幕内容快速捕获并转化为可悬浮参考的视觉元素。在工程实践中,这类工具的技术价值在于减少窗口切换与文件落地环节,从而提升多任务并行时的操作效率。典型应用场景包括设计稿比对、代码调试、资料整理等需要频繁参照屏幕内容的场合。Snipaste 作为一款轻量级工具,将截图、标注与贴图链路整合,支持快捷键自定义、多屏适配与历史回放,并针对免费版下载、安装配置及常见故障提供了完整的实操方案,帮助用户构建流畅的屏幕信息处理习惯。

weixin_34252686的博客 350

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

FSCapture长截图终极指南:从网页到Word文档的5种实战场景

本文是FSCapture长截图功能的终极指南,详细解析了从网页、Word文档、PDF文件到聊天记录等五大实战场景的应用技巧。文章不仅介绍了自动与自定义两种滚动模式的核心区别,还提供了优化设置、参数调整及疑难问题排查方法,帮助用户高效、精准地捕获各类超长内容,大幅提升信息收集与处理效率。

plum99的博客 621

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

免费离线OCR怎么用:Umi-OCR 把截图与扫描件一键变成可复制文字

上周整理项目资料,我盯着十几张翻拍的手写笔记发呆——要引用其中三句话,就得一个字一个字敲进文档。同事发来的网页截图里藏着关键报价,可手边的在线识别工具要先注册、再排队上传,还要担心资料被传去别人的服务器。Umi-OCR 就是在这个节骨眼上被我发现的:一款免费离线OCR软件,下载解压、双击打开,十分钟后所有图片里的文字都整整齐齐躺进了剪贴板。 ## 一句话认识它:电脑里的离线文字搬运工 Umi-

gitblog_00694的博客 955

截图变黑屏不是玄学:FLAG_SECURE 这道系统锁,如何被一枚 LSPosed 模块绕过?

> 先说重点:Enable Screenshot(前身 DisableFlagSecure)是一个 LSPosed 模块,它的唯一使命,就是绕过系统对 FLAG_SECURE 安全层的截图限制,同时关掉 Android 14 之后的"截图检测"和 Android 15 之后的"录屏检测"。如果你正被"银行应用截图全黑""聊天记录存不下来"困扰,这篇文章就是为你写的。 --- ## 一、先聊聊那

gitblog_00266的博客 347

Snipaste贴图功能实战:打造高效截图工作流

在快节奏的开发与设计工作中,截图工具早已不只是简单的图像捕捉。如何让截图成为持续服务的信息载体,是提升工作效率的关键。与传统截图后立即保存或发送不同,Snipaste的贴图(Pin)功能将截图转化为屏幕上的动态便利贴,支持缩放、透明度调节与再次编辑。这项设计改变了信息对照方式,显著减少窗口切换带来的上下文丢失。无论是程序员对照接口文档写代码,还是设计师参考UI稿调色,贴图都能提供无缝的视觉参考。结合像素级取色器与自定义快捷键,Snipaste将截图、取色、贴图整合为一条顺畅的生产力链路。本文从基础操作到多显

weixin_30096975的博客 205

FastStone Capture滚动长截图详解:功能、用法与注册码避坑指南

在日常办公和内容生产中,网页长截图、聊天记录截图、软件界面长图是高频需求。传统截图只能截取当前屏幕,而滚动长截图能力依赖于工具对窗口内容的自动滚动与同步拼接,其核心原理是通过模拟滚动并基于位移量完成图像融合,而非简单连拍。这项技术能在电商详情页校对、工单记录归档、技术文档配图等场景中大幅提升效率,同时也要注意内存占用、动态内容和懒加载等问题。FastStone Capture作为轻量级截图工具,以稳定的滚动截图和丰富的辅助功能著称,但其注册码与正版授权问题同样值得重视。网络上流传的所谓注册码大多时效性差且存

weixin_33858485的博客 396

2024年互联网时代:专业企业IM即时通讯聊天软件的重要性不容忽视!

在这个日新月异的信息时代里,企业IM即时通讯无疑是与我们日常生活联系最紧密的科技工具之一!它不仅能让我们轻松实现与亲朋好友间的流畅沟通与联系,更为互联网时代的广大企业员工提供了便捷高效的协同办公平台,助力企业内部信息无缝互通,提高工作效率。

zentao_pms的博客 2379

新手必看:Enable Screenshot(DisableFlagSecure)让Android任意应用截图不再受限,从零到一的实战避坑指南

用手机截图,本来是天经地义的事。可当你打开银行 App 想保存一笔转账记录、翻到聊天软件里某条重要对话想留个凭证、或者对着网课页面想整理笔记时,屏幕却突然弹出"当前页面不允许截图"的提示。截图按钮失灵,录屏画面一片漆黑,那一刻的烦躁,相信很多人都有过体会。 这种限制的幕后推手是 Android 系统里的一个安全开关——FLAG_SECURE。而今天要介绍的 Enable Screenshot(原

gitblog_00183的博客 212
上一篇: 《黑神话·悟空》是用什么编程语言开发的?
下一篇: 裁员了,很严重,今年千万别离职
轮子厂长
博客等级 码龄12年 297粉丝 271原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值