防止某些应用加载C#Dll

时间:2010-11-27 05:25:44

标签: c# internet-explorer dll windows-explorer shell-extensions

问候所有人,

我有一个用C#编写的shell工具栏扩展。它仅用于Windows资源管理器,因此我想阻止在Internet Explorer中加载DLL。 Windows提供了大量的方法来仅在IE中加载扩展,但似乎没有办法只执行资源管理器。我知道在加载DLL后我可以在不同的地方执行各种检查,但理想的是防止DLL加载。

现在,如果它是用C ++编写的,我会在GetModuleFileName中调用DllMain,检查可执行文件是否为iexplore.exe,如果是,则返回false。但是C#中没有DllMain;微软不相信我们对装载机锁定很好。有没有其他方法可以有选择地阻止加载C#DLL?

2 个答案:

答案 0 :(得分:0)

不要在.NET中执行Shell扩展处理程序 http://blogs.msdn.com/b/junfeng/archive/2005/11/18/494572.aspx

答案 1 :(得分:0)

第3节:注册我们的AppBar http://www.codeproject.com/KB/shell/csdoesshell3.aspx?print=true

我不得不在一个单独的帖子中发送这个,因为新用户不允许在一个帖子中发送多个链接。