【发布时间】:2010-11-27 05:25:43
【问题描述】:
大家好,
我有一个用 C# 编写的 shell 工具栏扩展。它只打算在 Windows Explorer 中使用,所以我想阻止 DLL 在 Internet Explorer 中加载。 Windows 提供了大量仅在 IE 中加载扩展的方法,但似乎无法仅在资源管理器中加载。我知道在加载 DLL 后,我可以在不同的地方执行各种检查,但理想的情况是完全阻止 DLL 加载。
现在,如果它是用 C++ 编写的,我会在 DllMain 中调用 GetModuleFileName,检查可执行文件是否为 iexplore.exe,如果是,则在附加时返回 false。但是C#中没有DllMain;微软不相信我们可以很好地使用加载程序锁。有没有其他方法可以选择性地阻止加载 C# DLL?
【问题讨论】:
标签: c# internet-explorer dll windows-explorer shell-extensions