我说的是 Windows shell 扩展。
我有一个 shell 扩展,它可以显示我的自定义文件类型的特定属性,例如 *.filetype。当然,这会导致我的 shell 扩展 dll 被加载到 explorer.exe 进程中。但现在如果我在任何应用程序中触发 FileOpen 对话框并检查该对话框内的文件属性(以记事本为例),那么这些 shell 扩展 dll 将被加载到 notepad.exe 进程中,这是我想避免的情况。
那么是否可以在 FileOpen 对话框中禁用特定的 shell 扩展?
Thanks.
创建一个 shim dll,它除了加载真实的(大)shell 扩展 dll 之外什么也不做。
该 shim dll 的唯一工作是检查当前进程是否为“explorer.exe”。如果是,填充程序将加载真正的 dll 并将所有调用转发到那里。如果不是,填充程序不会加载真正的 dll,而只是向所有请求返回 E_NOTIMPL 或类似的内容。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)