gpt4 book ai didi

c++ - Windows Shell 扩展不调用初始化

转载 作者:可可西里 更新时间:2023-11-01 10:28:42 25 4
gpt4 key购买 nike

我希望这里有人对可能导致此问题的原因有所了解。我已经为 Explorer 实现了几个 COM 扩展,它们提供了 ShellIconOverlays 和一个 ContextMenu,并且覆盖效果很好。当我在桌面上单击时,上下文菜单工作正常,但是当我右键单击任何资源管理器实例时,我可以看到在调试器中查询的接口(interface)和正在生成的 IShellExtInit 实例,但在资源管理器中未调用初始化函数实例,但它在桌面上调用得很好,之后会立即查询 ContextMenu 项。

这里有人以前见过这样的东西吗?

最佳答案

如果您正在调试 shell 扩展,您可能会遇到终止正在运行的 explorer.exe 进程并启动一个新进程的情况。当您开始一个新的时,它是否以与原来相同的完整性级别运行?

您的资源管理器设置是否要求在新进程中浏览文件?如果是,该进程是否以与原始进程相同的完整性级别运行?

此外,由于您正在运行调试器,因此您很可能构建了一个调试版本。 explorer.exe 是否有时会尝试加载 DLL 的调试版本,有时会尝试加载 DLL 的发布版本?

关于c++ - Windows Shell 扩展不调用初始化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6037888/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com