覆盖 Shell 扩展的拖放操作
我正在用 C++ 编写 ShellExtension 代码。 我正在创建一个虚拟驱动器。 它代表网络中某个位置的存储库。 我现在想要的是启用该驱动器的拖放功能。 我希望用户能够将文件拖动到该虚拟驱动器,然后我必须能够捕获该事件,以便我可以执行自定义操作。 到目前为止,我无法找到任何此类事件或接口。 我尝试使用 IDragAndDrop 接口,但其 rgs 文件未正确注册。 还有出路吗?
I am working on a ShellExtension code in C++. I am creating a Virtual Drive. Which represents a repository somewhere in the Network. What I want now is to enable Drag-Drop functionality to this Drive. I want to enable user to drag the file to that Virtual Drive and then I must be able to Grab that event, so that I can perform my custom operation. I am not able to find any of such Event or Interface so far. I tried using IDragAndDrop
interface, but its rgs files were not registering properly. Is there any way out?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
MSDN 文档中涵盖了您所要求的内容:
处理 Shell 数据传输场景
实现基本文件夹对象接口(特别是 IShellFolder:: GetUIObjectOf() 可以返回 IDataObject 或 IDropTarget 接口)
创建 Drop 处理程序
What you ask for is covered in MSDN's documentation:
Handling Shell Data Transfer Scenarios
Implementing the Basic Folder Object Interfaces (in particular, IShellFolder::GetUIObjectOf() can return an IDataObject or IDropTarget interface)
Creating Drop Handlers