调用程序集
在调用程序集的入口点时,建议使用搜索程序集时处于活动状态的相同激活上下文。 至少,请确保加载程序集的组件不会意外获取应用程序使用的激活上下文。 跨 DLL 边界泄露激活上下文可能会导致意外的依赖项。 如果应用程序编译ISOLATION_AWARE_ENABLED,则这不是问题,因为在这种情况下,默认情况下没有激活上下文处于活动状态。 如果未使用定义的ISOLATION_AWARE_ENABLED进行编译,则应激活 NULL 激活上下文或用于加载程序集的相同激活上下文。
以下示例确保托管 DLL 在可识别的上下文中运行:
ULONG_PTR ulpCookie;
ActivateActCtx(hTheActCtxForMyDll, &ulpCookie);
__try
{
MyDllIsolatedFunction();
myDllIsolatedComInterface->Funct();
}
__finally
{
DeactivateActCtx(0, ulpCookie);
}
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈