2

我正在寻找一种使用资源管理器外壳提示用户输入文件名的编程方式,我只希望加载系统外壳扩展。

我正在寻找此功能的原因是我想消除 3rd 方 shell 扩展作为崩溃和其他不确定行为的可能原因。

理想情况下,在某处我错过了一个标志,我可以将它传递给一个函数,这意味着类似于“安全模式”的资源管理器实例,它只加载系统外壳扩展。这似乎是一个必不可少的功能,我花了很多时间研究文档却无济于事。

我查看了 CFileDialog、GetOpenFileName 和 IFileOpenDialog 的 API 文档。看起来阻止加载非系统外壳扩展的唯一方法是通过注册表玩弄或使用软件实用程序进行某种全局黑客攻击。对于表现良好的应用程序来说,这些都不能令人满意。

我知道我可以使用不基于资源管理器的“旧式”文件对话框,但如果我强迫他们这样做,我的用户会杀了我。:)

我能想到的唯一方法是(呃)重新发明轮子并编写一个类似资源管理器的文件打开对话框。

4

0 回答 0