吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 2165|回复: 17
收起左侧

[求助] TranslucentTB-release源码

[复制链接]
GsuhyFihx 发表于 2023-8-15 23:55
API:SetWindowCompositionAttribute  在win11 21h2之后就无法透明任务栏了,而TranslucentTB可以实现,下载了TranslucentTB源码,看不懂,来个懂的大佬解释一下TranslucentTB在22h2之后的版本是怎么实现的?


TranslucentTB-release.zip (1.22 MB, 下载次数: 99)




免费评分

参与人数 3吾爱币 +2 热心值 +3 收起 理由
Rich_wz + 1 + 1 我很赞同!
Quasi + 1 感谢分享
为之奈何? + 1 + 1 我很赞同!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| GsuhyFihx 发表于 2023-8-16 11:03
来个看的懂源码的  解释一下 实现原理
Patches 发表于 2023-8-16 00:13
本帖最后由 Patches 于 2023-8-16 00:17 编辑

看错   我还以为你是问更改透明的方法

实现方法不太清楚   我是直接注册表修改的
shaoyewudao 发表于 2023-8-16 08:41
全村最靓的仔 发表于 2023-8-16 09:04
我用TranslucentTB无法实现win1122h2版本任务栏透明,求大佬们教教
锤锤 发表于 2023-8-16 11:00
推荐使用StartAllBack
xmafeng 发表于 2023-8-16 11:15
新版的可以支持11了,搜一下最新的
一只小凡凡 发表于 2023-8-16 11:21
本帖最后由 一只小凡凡 于 2023-8-16 11:40 编辑

通过WindowsAPI SendNotifyMessageW方法向全部窗口发送ImmersiveColorSet消息即可。

微软链接:https://learn.microsoft.com/zh-c ... inuser-sendmessagew

C#实现方法如下:
[C#] 纯文本查看 复制代码
[DllImport("user32.dll")]
private static extern bool SendNotifyMessage(uint hWnd, uint Msg, IntPtr wPARAM, IntPtr lPARAM);

const uint HWND_BROADCAST = 0xffff;
const uint WM_SETTINGCHANGE = 0x001A;
SendNotifyMessage(HWND_BROADCAST, WM_SETTINGCHANGE, new IntPtr(0), Marshal.StringToHGlobalAnsi("ImmersiveColorSet"));

免费评分

参与人数 1吾爱币 +4 热心值 +1 收起 理由
涛之雨 + 4 + 1 我很赞同!

查看全部评分

 楼主| GsuhyFihx 发表于 2023-8-16 11:23
一只小凡凡 发表于 2023-8-16 11:21
通过WindowsAPI SendNotifyMessageW方法向全部窗口发送ImmersiveColorSet消息即可。

微软链接:https:// ...

大佬来了   感谢指导  容我使用易语言研究一番先
一只小凡凡 发表于 2023-8-16 11:25
本帖最后由 一只小凡凡 于 2023-8-16 11:28 编辑

首先修改注册表,然后全部窗口发送上述的消息,我在C#中用的SendNotifyMessage方法 ,C++可以使用SendNotifyMessageW方法

SendNotifyMessageW(HWND_BROADCAST, WM_SETTINGCHANGE,0,L"ImmersiveColorSet")
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-24 17:22

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表