SteamTools icon indicating copy to clipboard operation
SteamTools copied to clipboard

🐛[BUG] 全局钩 DWM 的 API 导致 DWM 进程内存泄漏

Open Mishasama opened this issue 2 years ago • 3 comments

请认真检查以下清单中的每一项

  • [x] 已经搜索过,没有发现类似的 issue
  • [x] 已经搜索过文档,没有发现相关内容
  • [x] 已经尝试使用过最新版,问题依旧存在
  • [x] 使用的是官方版本(未替换及修改过安装目录程序文件)

🐛 描述

看截图,当我阻止这个操作后就再也没发现系统的 dwm.exe 有内存泄漏的问题了,那必须是你的锅了。 我也不明白你为什么要钩这个,毕竟不给你钩貌似功能上也没缺失或者程序崩溃。 要是我没有这个主动防御的玩意的话估计我一辈子都不知道这是你的锅了。

假设你的测试环境怎么也无法复现的话麻烦想个办法不要钩这玩意,这 DWM 很容易就会有内存泄漏的问题,连英特尔的核显驱动都中过招,但已经修复了。我也更新了相关的驱动,并且只要不让你钩就不会有问题,所以确认这次不是英特尔的锅了。

📷 复现步骤

步骤不明,请靠 log 分析。 大约在 22 号之后的 log 是属于阻止后的,没有发生内存泄漏的问题。

📄 日志信息

internal-nlog.txt nlog-all-2023-03-20.log nlog-all-2023-03-21.log nlog-all-2023-03-22.log nlog-all-2023-03-23.log nlog-all-2023-03-24.log nlog-all-2023-03-25.log nlog-all-2023-03-26.log

🖼 截图

image

🚑 其他信息

  • 处理器体系结构:x64
  • 系统版本号:Windows 10.19042.1645
  • 下载渠道:微软商店
  • 程序版本:2.8.6
  • 是否包含独立运行时: 不知道

Mishasama avatar Mar 27 '23 00:03 Mishasama

调用dwmapi应该是为了实现获取动态桌面背景设置为程序背景的功能,我之后会检查一下这个功能的代码,目前的话这个功能应该也不会再3.0版本上线,目前是计划砍掉的。

rmbadmin avatar Mar 27 '23 04:03 rmbadmin

@rmbadmin https://sourcegraph.com/search?q=context:global+repo:%5Egithub%5C.com/BeyondDimension/SteamTools%24+dwmapi+rev:refs/tags/2.8.6&patternType=standard&sm=0&groupBy=repo

AigioL avatar Mar 27 '23 04:03 AigioL

不确定是否为同样的原因,内存泄漏有点夸张

image image

nlog-all-2023-12-29.log

JasonGrass avatar Dec 29 '23 13:12 JasonGrass