首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果文件名在DOS8.3中相同,MoveFile和MoveFileEx的工作方式会很奇怪

如果文件名在DOS8.3中相同,MoveFile和MoveFileEx的工作方式会很奇怪
EN

Stack Overflow用户
提问于 2015-09-10 10:22:38
回答 1查看 280关注 0票数 0

好的,我有文件名为

代码语言:javascript
复制
ANIME~1.MKV~FNH47B97
ANIME~1.MKV

它是完整的文件名。它是由用户命名的。我想把第一个重命名为动画~1.jpg,从操作系统的角度看,它们似乎是相同的文件。MoveFile和MoveFileEx都什么也不做。他们返回OK,仅此而已。

另一个奇怪的情况是,例如,

代码语言:javascript
复制
ANIME~2.MKV~FNH47B97
ANIME~3.MKV

我想把第一个重命名为动画~2。And操作系统创建了和动画一样的and。and仍然什么也不做。

这取决于文件夹中具有“相同DoS8.3名称”的文件的数量。

有办法解决吗?可能需要一些额外的操作/标志吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-09-10 10:44:01

要将注释中的讨论概括为大致答案:MoveFile(Ex)对完整的文件名进行工作,尽管它可以根据其短名称找到源文件,但目标文件被视为长名称。

这意味着目标文件名不应与现有文件的任何长或短文件名发生冲突。这可能就是你的第二个测试用例失败的原因。第一个测试用例可能由于类似的原因而失败;我只对这两个文件进行了尝试,并且MoveFile可以处理它。

可以禁用DOS风格8.3短名称的生成,请参阅KB121007,但我真的不推荐它。它会引起很多问题,例如这篇文章。此外,这是一个决定,应该留给系统管理员,而不是任何应用程序。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32499242

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档