警惕WS_EX_LAYERED属性的问题

屏幕共享技术原理与安全风险:从Discord投屏到进程隐藏 屏幕共享技术是现代实时通信和远程协作的核心功能,其原理基于操作系统提供的图形捕获API,如Windows的DXGI或macOS的AVFoundation框架。这些API通过获取显示缓冲区或特定窗口的帧数据,经编码后通过网络协议传输。从技术实现角度看,屏幕共享不仅涉及图像采集和编码,还可能触及进程管理、窗口属性和系统安全层面。在工程实践中,开发者需要关注性能优化、兼容性和隐私保护。然而,这项技术也可能被滥用,例如通过操纵窗口属性、进程隐藏甚至视频流伪造等手段,试图在共享内容中隐藏特定信息。这类行为常出现在游戏 阅读详情

WS_EX_LAYERED是微软窗口扩展属性,在API层面实现了窗口透明化的功能,的确为创建酷酷窗口提供了便利

 

然后必须警惕该属性带来的问题.

 

例如最近希望扩展Tooltip窗口的显示效果

 

当在绘画时使用了

SetBkMode( TRANSPARENT )

,希望透明显示文字时就出现了问题,在ToolTip更换了文字后,发现底色整个变黑了

 

 

在EraseBkgnd和PAINT消息上纠缠很久后依然没有解决。

 

最后发现Tooltip的窗口具有扩展属性WS_EX_LAYERED

 

将之去除后,问题消除。

 

所以可见该属性在内部实现上有特殊处理。以后如果各位在界面显示方面出现奇怪问题时,不妨察看下是否窗口具有WS_EX_LAYERED属性,

并确认是否该属性导致了奇怪问题的产生。

里奥老师乾坤大挪移—初尝Windows分层窗口技术 体验一下透明窗口 阅读详情

相关推荐

C++两万字总结Windows系统中的Layered分层窗口技术(附源码)

在开发Windows应用程序时,我们会时常使用Layered分层窗口实现特殊的视觉效果。在Windows系统中,操作Layered分层窗口的API函数分别是SetLayeredWindowAttributes和UpdateLayeredWindow,其中SetLayeredWindowAttributes可以设置窗口的透明度,UpdateLayeredWindow则能实现各种特殊效果的异形窗口。 今天就来详细介绍一下如何使用这两个函数去实现指定效果的Layered分层窗口,以...

dvlinker的技术专栏 1万+

关于WS_EX_LAYERED的思考

带有WS_EX_LAYERED风格的窗口也就是我们说的分层窗口,zhu

阿狸在狂笑 1万+

实现无标题栏窗口的拖拽技术

本文还有配套的精品资源,点击获取 简介:在Windows系统中,传统上通过窗口标题栏拖拽以移动窗口。当标题栏隐藏时,开发者需要采用特定技术让用户能够拖动窗口。这涉及重写窗口过程,捕获特定消息(如WM_NCHITTEST、WM_NCLBUTTONDOWN、WM_NCMOUSEMOVE),并处理窗口样式,如无边框样式的创建(使用WS_EX_LAYERED样式)和透明度设置(使用...

weixin_42613017的博客 1592

分层窗口(Layered windows)

Layered WindowsWindows 2000 introduces a new extended window style bit: WS_EX_LAYERED. When used properly, it can significantly improve performance and visual effects for a window that has a complex shape, animates, or wishes to use alpha-blending effects.

JankyHu的专栏 1万+

制作半透明窗口-WS_EX_LAYERED-SetWindowLong

介绍编写半透明窗口的源代码,API的NO—MFC,JUST DO IT!

Habitat安装全网最详细教程,手把手带你跑通example.py(全网唯一)

全网最详细具身智能仿真平台habitat的安装教程

shannanshouyin的博客 2756

C++ 获取 WS_EX_LAYERED 分层窗口图像的两种方案

通过网上的搜索,获取窗口的图像一般可以使用 PrintWindow 指定 PW_CLIENTONLY,不过对于分层窗口,这种方案显然是不行的,这么写会获取图像失败。

alan16356的博客 952

【通信协议-RTCM】MSM语句(1) - 多信号GNSS观测数据消息格式

注释:RTCM响应消息1020为GLONASS星历信息,暂不介绍,前公司暂未研发RTCM消息类型版本的DR/RTK模块,DR/RTK模块仅NMEA消息类型使用注释:公司使用的多信号语句类型为MSM4&MSM7,也应该是运用最广泛的语句类型,例如本人之前在公司开发的工具全是基于MSM7语句类型来进行的。

qxj2422640226的博客 2092

WS_EX_LAYERED 支持透明扩展属性

WS_EX_LAYERED是微软窗口扩展属性,在API层面实现了窗口透明化的功能,的确为创建酷酷窗口提供了便利 然后必须警惕该属性带来的问题. 例如最近希望扩展Tooltip窗口的显示效果 当在绘画时使用了 SetBkMode( TRANSPARENT )

fysy0000的专栏 2880

LS-Dyna模态分析实战:从模型构建到结果解读的全流程指南

本文提供了一份详尽的LS-Dyna模态分析实战指南。文章系统讲解了如何利用LS-Dyna内置的隐式求解器进行特征值求解,从模型构建、几何清理、材料与连接设置,到核心的边界条件与隐式求解控制(如*CONTROL_IMPLICIT_EIGENVALUE),最后完成计算并解读频率与振型结果。旨在帮助工程师在熟悉的环境中高效完成结构振动特性分析,为后续动态响应分析奠定基础。

info6的博客 263

CTransformers: 高效的Python语言模型绑定库

CTransformers是一个为C/C++实现的Transformer模型提供Python绑定的开源库。它基于GGML库构建,旨在为开发者提供一种高效且易用的方式来在Python中使用各种流行的语言模型。支持多种流行的语言模型,如GPT-2、LLaMA、Falcon等提供统一的简单API接口支持GPU加速(CUDA和Metal)与Hugging Face Transformers和LangChain集成支持流式输出和嵌入计算。

helloaiworld的博客 1268

Unity透明窗口开发指南:从原理到实战打造桌面悬浮应用

在图形用户界面开发中,窗口管理是基础而重要的技术概念。其原理涉及操作系统对窗口句柄、样式和消息机制的管理,通过调用底层API可以改变窗口的视觉与交互行为。这项技术的核心价值在于突破传统矩形窗口的限制,实现更灵活、沉浸式的界面呈现方式,广泛应用于桌面小部件、性能监控、画中画工具等场景。本文聚焦于Unity引擎中透明窗口的实现,深入解析了渲染管线适配、Windows API调用等关键技术,并针对点击穿透、性能优化等工程实践问题提供了解决方案,帮助开发者高效构建稳定可用的桌面悬浮应用。

weixin_34174422的博客 355

Transformer 面试题及详细答案120道(1-10)-- 基础概念

本文总结了Transformer模型的10个常见面试问题及答案,涵盖了其核心结构、创新点、工作机制等关键知识点。主要内容包括:Transformer的自注意力机制和多头注意力机制创新点,相比RNN/CNN的优势,模型在《Attention Is All You Need》论文中的提出背景,以及Encoder-Decoder协同工作流程等。重点解析了位置编码的作用、长距离依赖处理能力、与传统注意力机制的区别等核心问题。每个问题都给出了简明扼要的专业解答,适合作为Transformer相关面试准备的参考资料。

大剑师兰特的GIS世界 849

Unity二次元桌宠开发实战:从Live2D模型到桌面交互全流程

桌面宠物作为一种轻量级的数字伴侣,其核心在于将虚拟角色与用户桌面环境无缝融合,提供陪伴感与趣味交互。其实现原理通常涉及图形渲染、动画驱动与系统级窗口管理。从技术价值看,这类项目能有效串联2D/3D图形技术、实时交互逻辑与跨平台集成能力,是学习游戏引擎应用与系统编程的绝佳实践。在应用场景上,二次元风格的桌面宠物尤为流行,常被用于个性化桌面装饰、虚拟主播的互动延伸或作为轻量级的情感化计算界面。本文聚焦于使用Unity引擎结合Live2D模型,详细讲解如何实现一个具备基础交互能力的二次元桌宠,涵盖从模型导入、动画

weixin_33874713的博客 400

拼多多笔试真题-多多送快递(C++/Py/Java /Js/Go)

拼多多技术岗笔试 8月2号真题,拼多多笔试第三题【多多送快递】,提供详细思路讲解以及Java、C++、Python、Go、JavaScript多语言代码实现。拼多多笔试真题【多多送快递】多语言题解。

qq_45776114的博客 294

点云从入门到精通技术详解100篇-基于点云语义分割的电力线提取及聚类研究

在现代社会,电力一直扮演着最重要的角色之一。它不仅与人民的生活息息相关,更是一个国家发展的命脉。近年来,随着我国各特高压输电线路建成(比如2022年1月份白鹤滩江苏特高压输电线路的放线)以及电网规模的不断扩大,我国年发电量稳步上升,人民的生活水平越来越高。我国土地辽阔,输电线路分布广泛,再加上地形环境复杂多样,电力线可能遭受风吹雨晒甚至是冰雪寒灾的影响。因此,为了保障电力线的可靠供电,防止停电意外发生,电力部门要定期对输电线路进行检查。目前我国主要。

getusushu的博客 1010

WPF Ribbon控件深度解析:从安装集成到高DPI工程实践

Ribbon是WPF中实现Office风格导航与命令组织的核心UI范式,其本质是基于VisualStateManager的状态驱动控件体系,通过RibbonWindow、RibbonTab、RibbonGroup等组件构建可伸缩的命令界面。技术价值在于提供开箱即用的系统级主题集成、DWM硬件加速渲染及GAC注册的稳定部署能力,显著降低企业级桌面应用的UI一致性维护成本。典型应用场景包括ERP、医疗HIS、政企OA等需兼顾Windows传统生态与专业交互体验的WPF桌面系统。本文聚焦Microsoft Rib

chuji3953的博客 431

YOLO26模型应用过程中的报错处理及疑问解答,涉及环境搭建、模型训练、模块改进、论文写作

本文记录了YOLO26模型的这一系列过程中可能发生的问题,以及大家非常关心的问题,这里统一做了一个记录和解答。

Limiiiing的博客 241

易语言通过进程ID精准获取窗口句柄的原理与实践

在Windows桌面自动化开发中,进程ID(PID)是操作系统级唯一标识,而窗口句柄(HWND)是UI操作的核心入口;二者间需建立稳定、不依赖窗口标题或类名的确定性映射。其底层原理基于Windows内核提供的GetWindowThreadProcessId API,通过遍历顶级窗口并比对所属进程实现精准绑定。该技术显著提升RPA、UI测试、辅助工具等场景的脚本鲁棒性,避免因动态标题、随机类名或前台状态导致的识别失败。本文聚焦易语言环境下如何安全调用Win32 API完成PID→HWND转换,并解决指针传参、

weixin_34015336的博客 520

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

C# 窗体样式使用WS_EX_LAYERED后,无法绘制windows控件的解决办法

根据一副 png 图片绘制半透明窗体时,用了 WS_EX_LAYERED 后当前窗体再也不会处理 paint 事件,所以所含的子控件是一辈子也不会画出来的,但是这个控件确实存在,而且可以响应事件 。而此时 windows 画制窗体是使用 UpdateLayeredWindow 这个 api 函数的。        对于按钮,完全可以自己画两个图片然后盖在 button 上面,通过处理 ...

weixin_34357928的博客 261

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

[MFC] WS_EX_LAYERED 实现透明异形窗口(酷狗歌词、360加速球、窗口边缘阴影)

关键词:WS_EX_LAYERED、 UpdateLayeredWindow  PC应用不少都有透明的异形窗口 比如酷狗音乐播放器的歌词窗口、360桌面加速球 如图: 这类窗口的实现 可以采用WS_EX_LAYERED属性(详情请MSDN) 将窗口设置WS_EX_LAYERED和WS_EX_TRANSPARENT属性  并使用函数UpdateLayeredWin

felicityWSH的博客 4144

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

如何在子控件上使用WS_EX_LAYERED

从Window 8开始,WS_EX_LAYERED可用于子控件。 方法:需要清单文件,至少指定Window 8兼容性(子分层仅支持从Window 8开始)。 对于想要使用分层子窗口的任何人,应将以下内容作为清单文件包含在内。 <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> &...

qq_39529180的博客 1246

Window 透明窗体的实现总结

此片文章是以前写的, 刚刚新开了博客, 就发出来跟大家分享下。 这篇文章主要讲得是vc中各种分层、透明、不规则窗口的实现, 基本囊括GDI、GDI+能使用的所有方法。 本文讲述了三种方法,其中第一种方法有两种不同效果,第三种方法有两种不同的实现方式。文中有方法使用了GDi+,关于GDI+的使用请自行查询资料,本文不进行细述。 方法一:窗体整体透明,支持子控件透明,支持

l198738655的博客 3283

实现LAYERED窗口

LAYERED窗口是与普通窗口不同的窗口,这个窗口可以提供复杂的形状,可以使用alpha混合特效,而且,由系统自动构图和重绘layered窗口,因此,在这种窗口的WM_PAINT消息,我们基本上不用的。也正因为如此,layered窗口可以平滑的渲染。 要创建layered窗口,在我们调用CreateWIndow的时候,指定WS_EX_LAYERED样式,在mfc中,如果是对话框,我们可以在对话框

xinzhiyounizhiyouni的专栏 2015

窗体样式使用WS_EX_LAYERED后,无法绘制windows控件的解决办法

根据一副png图片绘制半透明窗体时,用了WS_EX_LAYERED后当前窗体再也不会处理paint事件,所以所含的子控件是一辈子也不会画出来的,但是这个控件确实存在,而且可以响应事件 。而此时windows画制窗体是使用UpdateLayeredWindow这个api函数的。 其实这个问题,3年前就在csdn网友miky的"笨笨钟"发布后就讨论过了,后来出了一个叫桌面天气秀 的东东也采用类似的...

xiaoer 1203
上一篇: 中文分词词典构造简述
下一篇: 天干地支六十四卦
b2b160
博客等级 码龄20年 2408粉丝 96原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

b2b160

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值