1

我们有一个由许多可执行文件组成的应用程序,这些可执行文件是从主菜单可执行文件中生成的。我们每个单独的可执行文件都使用大量的 DLL。我们所有的可执行文件和 DLL 都是使用 Visual Studio 2010 构建的。

当 AppLocker 通过组策略在仅包含安装了我们软件的单个 VM 的测试域上启用时,加载时间会显着增加。

我们可以使用 Process Monitor ( procmon.exe) 看到,在加载每个 DLL 时,会枚举文件%WINDIR%\System32\catroot夹中的文件。此枚举需要大量时间来运行,针对可执行加载链中的每个 DLL 运行,并且仅在启用 AppLocker 时才能看到。

为可执行文件和 DLL 规则设置/强制执行所有默认 AppLocker 规则。并且有例外%SYSTEM32%\catroot2\{F750E6C3-38EE-11D1-85E5-00C04FC295EE}\*

是否有任何其他 AppLocker 规则、Windows 设置或 Visual Studio 项目设置可以减少或消除此目录查询对我们加载时间的影响?

谢谢!

4

1 回答 1

0

已设法通过创建自签名证书并分配所有 DLL 来解决此问题。

于 2016-02-12T13:39:55.733 回答