C++:如何从快捷方式打开 IShellFolder 驱动器文件夹

标签 c++ windows shell-extensions

我在快捷方式中使用以下命令在 Windows 资源管理器中打开我的虚拟驱动器。 %SystemRoot%\Explorer.exe/e,::{MyExtension CLSID}

虚拟光驱使用IShellFolder接口(interface),是一个ShellExtension。它有几个预定义的文件夹。 问题是我可以直接使用上述语句在 Windows 资源管理器中打开虚拟驱动器,但我无法直接打开其中一个文件夹。

此链接解释了如何打开 IShellFolder http://msdn.microsoft.com/en-us/library/bb776817(VS.85).aspx#

但我不确定如何使用 objectname 参数 %SystemRoot%\Explorer.exe/e,::{MyExtension CLSID},objectname

最佳答案

我拿了GMail Drive Shell extension ,安装它,并在命名空间内创建一个文件夹。然后我使用上面的方法(/E,::{CLSID})创建快捷方式并在末尾添加“,foldername”。
它工作得很好,我认为你需要检查你的 IPersistFolder::Initialize执行。

关于C++:如何从快捷方式打开 IShellFolder 驱动器文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/672899/

相关文章:

c++ - 无法将参数从 'LPITEMIDLIST *' 转换为 'LPCITEMIDLIST *'

c++ - QImage@@QEAA@$$QEAV0@@Z 无法位于 dll 中

c++ - 设置/访问使用 map<string, boost::any> 制作的锯齿状 map 值

ruby - Visual TCL,如何安装和使用?

windows - powershell 传递命令行参数

c++ - COM IContextMenu::InvokeCommand - 匹配 LPCMINVOKECOMMANDINFO::lpVerb 到项目

c++ - 在这种情况下被 lambda 输出混淆

C++ 套接字使用位而不是字节

windows - 为什么尾随反斜杠后跟引号在 cmd 中表现如此奇怪?

c++ - 资源管理器在 TILE View 模式下不显示 shell 命名空间扩展的项目详细信息