【发布时间】:2013-07-30 15:44:16
【问题描述】:
我正在尝试用我自己的自定义对话框替换所有 Windows 通用(打开/保存)文件对话框调用。从我目前阅读的内容来看,我可以通过编写自己的方法或使用诸如 detours 或 easyhook 之类的库来对调用进行挂钩。但是最近有人告诉我,这种方法只能在Vista之前使用,因为会话架构发生了变化,在Win 7/8中不可能进行这种切换。现在,我不是一个喜欢“不可能”这个词的人:) 所以如果你对这件事有任何建议,任何建议,请告诉我,我会感谢你的好意。
对于我要做什么,我的应用程序将由用户运行,它将驻留在托盘中,当用户从任何应用程序调用打开/保存对话框时,它应该将默认的公共对话框替换为自定义对话。
【问题讨论】:
-
请将此设为可选。至少有一些用户会更喜欢 Windows 提供的版本。
-
你以前做过hook吗?
-
不支持。不是说不可能,只是不支持。你也进入了应用程序兼容的危险世界,因为应用程序对常见的对话框做了各种疯狂的事情。例如,所有的 CDM 消息、CDN 通知、自定义模板……
-
哦,天哪……与挂钩常见对话框相比,替换资源管理器可能是微不足道的。
-
@BenVoigt:感谢您的意见。不,我没有上钩的经验。
标签: c++ winapi windows-7 hook filedialog