DOSBox 8.3 文件名与 Windows 7 不一致

DOSBox 8.3 文件名与 Windows 7 不一致

当我将dirDOSBox 0.74 与dirWindows 7 命令提示符进行比较时,8.3 文件名有所不同。

长格式(驱动器和目录):

2012-07-30_abcdefg-abcde
2012-07-30_abcdefg-abcde.7z
2012-08-06_abcdefg-abcde
2012-08-06_abcdefg-abcde.7z
2012-10-22_IIS-LogFiles
2012-10-22_IIS-LogFiles.zip
2012-11-14_selective-abcde

DOSBox 0.74(dir):

2012-0~1
2012-0~3
2012-1~1
2012-1~3
2012-0~2 7Z
2012-0~4 7Z
2012-1~2 ZIP

Windows 7的 (dir /x):

2012-0~1
2012-0~1.7Z
2012-0~2
2012-0~2.7Z
2012-1~1
2012-1~1.ZIP
2012-1~2

例如,如果我将路径传递给 DOSBox,有时会发生这种情况,并且我尝试自动化的任何操作都会失败。为什么会有这种差异,我可以更改任何设置来帮助 DOSBox 生成正确的短名称吗?

答案1

这已经已报告大约 4.5 年前,DOSBox 的作者就已经发现了这个错误,不幸的是,他们更喜欢称这个错误为“功能”:

我们意识到了这一点。认为 dosbox 总是以不同的顺序排列 windows 的。使用 windows api 函数并不容易,因为 dosbox 在不同的操作系统上有不同的行为。

老实说,不要以为有任何办法可以解决这个问题,除非你自己做出更改并编译自己的副本,或者足够幸运地找到别人已经制作的副本。

答案2

目前已经有了解决方案。尝试最新的增强型 DOSBox SVN 版本,该版本支持长文件名 (LFN)(以及鼠标右键复制/粘贴功能)。它应该支持长文件名,并使用与 Windows 系统本身相同的 8.3 文件名。

最新的 Windows 二进制文件 + 所需的 DLL,压缩包: http://bit.ly/12jANWF

相关论坛讨论及来源: http://www.vogons.org/viewtopic.php?t=40610

相关内容