IFileOperation::MoveItems 不适用于命名空间扩展根
所以我有这个根(在特定文件类型上)命名空间扩展,支持将文件拖放到其中。我使用 IFileOperation 来处理文件操作。
将来自 NSE 外部的文件移动/复制到子文件夹中是可行的。将文件复制到命名空间根目录中是有效的。但是,我无法将文件移动到根目录中。确实如此。不是。工作。我的扩展从未查询过 ITransferDestination,尽管它适用于其他用例。
你有过这样的情况吗?
注意:
- 我正在 Bjarke Viksoe 出色的 TarFolder 代码库之上构建扩展。
- 我收到的错误(通过标准资源管理器对话框)是“文件已在使用中”,
- 复制引擎似乎最终决定我正在尝试将文件从常规文件系统移动到常规文件系统。上面的错误是调用
MoveFileEx
返回的错误,这是我通过跟踪收集到的信息。 - PIDL 看起来正确,并且 IFileOperation::CopyItems 无论如何都适用于相同的输入。
- 我想坚持使用 IFileOperation,因为它提供了最自然的集成
So I have this rooted (on a specific file type) namespace extension that supports drag-and-dropping files into it. I use IFileOperation to handle file operations.
Moving/Copying a file that comes from outside the NSE into a sub-folder works. Copying a file into the namespace root works. However, I can't get to move a file into the root. It just does. Not. Work. My extension is never inquired for a ITransferDestination, although it is for other use cases.
Have you ever been in this situation ?
Notes:
- I'm building the extension on top of Bjarke Viksoe's great TarFolder codebase.
- The error I'm getting (through the standard Explorer dialog) is "The file is already in use"
- the copy engine seems to end up deciding I'm trying to move a file from the regular file system to the regular file system. The above error is the one returned by a call to
MoveFileEx
, from what I could gather by tracing in there. - the PIDLs look correct, and IFileOperation::CopyItems works for the same inputs anyway.
- I'd like to stick with IFileOperation, as it provides the most natural integration
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
尝试直接联系 Bjarke,他可能对正在发生的事情有一些了解。
他的电子邮件:
[email protected]
我个人没有使用过他的框架在此之前,抱歉我无法提供比这更多的帮助。
Try contacting Bjarke directly, he may have some insight as to what may be going on.
His email:
[email protected]
I personally haven't worked with his frameworks before, sorry I can't be of any more help than this.