DelayFreeSizeMB 如何改变我的应用程序的行为?
How does DelayFreeSizeMB change the behavior of my application?
我刚刚注意到我的应用程序在
下的注册表中有一个名为“DelayFreeSizeMB”的 DWORD 注册表项,其值为 64
HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\MyApp.exe
此注册表项对我的应用有何作用?我知道 Windows 会在程序开始时读取“图像文件执行选项”,它可能会改变 Windows 处理应用程序的方式。通常,此密钥定义 GFlags (REG_SZ GlobalFlag) 和应用程序验证程序设置 (REG_DWORD VerifierFlags),但其中 none 在那里。
我只得到 4 google 个搜索“DelayFreeSizeMB”的结果,其中 none 个很有帮助。
我在硬盘上搜索了包含这个词的可执行文件,verifier.exe
(应用程序验证程序)是“罪魁祸首”。玩过之后,发现有一个 属性 用于 Basics / Heaps 的名称完全相同:
功能可能是:
- 最近释放的内存将不会返回堆。
- 而是用一种模式填充。
- 损坏的模式可用于识别悬挂指针和双重释放
因此此设置对 Windows 堆管理器有影响。从名称来看,它是为此目的保留的内存量。
如果该注册表值没有附带 REG_DWORD VerifierFlags,它可能不会执行任何操作。
我刚刚注意到我的应用程序在
下的注册表中有一个名为“DelayFreeSizeMB”的 DWORD 注册表项,其值为 64HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\MyApp.exe
此注册表项对我的应用有何作用?我知道 Windows 会在程序开始时读取“图像文件执行选项”,它可能会改变 Windows 处理应用程序的方式。通常,此密钥定义 GFlags (REG_SZ GlobalFlag) 和应用程序验证程序设置 (REG_DWORD VerifierFlags),但其中 none 在那里。
我只得到 4 google 个搜索“DelayFreeSizeMB”的结果,其中 none 个很有帮助。
我在硬盘上搜索了包含这个词的可执行文件,verifier.exe
(应用程序验证程序)是“罪魁祸首”。玩过之后,发现有一个 属性 用于 Basics / Heaps 的名称完全相同:
功能可能是:
- 最近释放的内存将不会返回堆。
- 而是用一种模式填充。
- 损坏的模式可用于识别悬挂指针和双重释放
因此此设置对 Windows 堆管理器有影响。从名称来看,它是为此目的保留的内存量。
如果该注册表值没有附带 REG_DWORD VerifierFlags,它可能不会执行任何操作。