问题描述
我希望这个问题不要太含糊,有人可以为我的问题锦上添花。
我用Chrome项目(在Chrome论坛中已经问过这个问题)和Visual Studio 2019创建了Windows应用程序(makefile)。 该应用程序启动了一些进程,每个进程都使用了大约20 KB的内存,但是奇怪的是,同一应用程序每个进程使用了200 KB以上的内存,这是一些具有相同Windows版本的PC。 (启动应用程序后的内存使用情况,无其他操作)
我已经用编译器/链接器选项奋斗了几天,但没有成功。仍然占用大量内存。 Chromium示例使用我的makefile并没有显示出此问题,这使我更加疯狂。
最后,我最终更改了exe文件的名称,而不是app.exe,而只是更改了app1.exe,...问题消失了,所有PC上的正常内存使用情况都显示出此问题。
我更改了makefile中的名称以生成相同的可执行文件,但名称不同,并且还在Windows资源管理器中更改了原始的和有问题的exe文件的名称,并得到了肯定的结果。
我在Windows资源管理器中将好app1.exe应用程序重命名为app.exe,问题再次出现...
我现在正在搜索某种Windows配置或程序,这些配置或程序可能会产生此问题,但到目前为止还没有运气。 Windows防火墙已被禁用。
还是这可能是某种病毒?
解决方法
问题已解决...由于使用了ProcessHacker工具,我发现在坏的情况下加载了库“ verifier.dll”。 该dll是Windows应用验证工具的一部分。我不记得以前使用过此工具,甚至还没有激活它。 然后,我发现有一个注册表项:
计算机\ HKEY_LOCAL_MACHINE \ SOFTWARE \ WOW6432Node \ Microsoft \ Windows NT \ CurrentVersion \ Image文件执行选项\
可以在其中找到我的应用程序的名称。重命名此条目后,一切正常。 现在,我将研究此条目内的变量的含义: GlobalFlag = 0x02000000和PageHeapFlags = 0x2