gpt4 book ai didi

c++ - 为什么这段代码会导致 Windows Defender 发疯,并将这段代码识别为名为 Ludicrouz.j 的木马

转载 作者:行者123 更新时间:2023-12-01 15:03:43 29 4
gpt4 key购买 nike

我正在使用名为 Raylib 的库开发桌面应用程序,对于那些不知道 Raylib 是什么的人来说,它是一个用于制作游戏的开源渲染 API。默认情况下,Raylib 不允许您调整大小或最大化为窗口。为了解决这个问题,我找到了这段代码:

void ToggleGlutNormalWindow(LPCTSTR szWindowTitle)
{

long dwStyle;

HWND hwndGlut;

hwndGlut = FindWindow(NULL, szWindowTitle);

dwStyle = GetWindowLong(hwndGlut, GWL_STYLE | WS_THICKFRAME | WS_SIZEBOX);
// Flips Between On and Off
dwStyle ^= WS_MAXIMIZEBOX | WS_THICKFRAME | WS_SIZEBOX;
SetWindowLong(hwndGlut, GWL_STYLE, dwStyle);
}

正如您可能从我的标题中看出的那样,在编译和运行时,对我来说,这会产生一个 Windows Defender 警告,告诉我它检测到了一个名为 Ludicrouz.j 的木马。

有谁知道启用最大化按钮和调整大小的更好方法,或者您知道为什么将其检测为病毒?

最佳答案

这是编程中的一个常见问题,并没有一个简单的答案。
防病毒程序保留一个恶意软件签名数据库,范围从引用特定 DLL 到实现特定算法(如加密货币矿工)或更奇特的东西(如 rowhammer)。这是相当有效的,可以轻松捕获衍生或简单的恶意软件,并且误报的可能性很低。但是,可能会发生误报,但我在您的代码中没有看到任何会导致误报的内容。
然而,越来越多的防病毒软件开始扫描可执行文件并将其分析结果发送到防病毒公司的云服务。如果他们的数据库中没有类似的东西,防病毒程序会将可执行文件标记为“低信誉”或“无法识别”或“未验证”。这相当有效,因为绝大多数人只会运行非常常见的程序,例如办公室编辑器和网络浏览器。当您是一名程序员并且每天生成数十次“低声誉”可执行文件时,就会出现问题。
这很可能是您遇到的情况。

关于c++ - 为什么这段代码会导致 Windows Defender 发疯,并将这段代码识别为名为 Ludicrouz.j 的木马,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61036801/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com