终于发现RockRidge文件名错误问题的根源
有关RockRidge的问题可以看以下贴子
http://www.ultraiso.com/cgi-bin/topic.cgi?forum=2&topic=530&show=0
经过N次试验和研究,终于发现问题的根源:在UltraISO中,RockRidge文件名的形式依赖于你添加文件的方式。若你在设置ISO文件属性支持RockRidge扩展前添加文件(也就是先向ISO文件中添加文件,添加完成后再设置ISO文件属性,让它支持RockRidge),那RockRidge文件名就会变成和ISO-9660文件名一样了(注意了,是一样,不是相似)。若你先把ISO文件属性先设置好,再往里添加文件,就没有问题了。
由此可猜测,这应该算是一个BUG。由于RockRidge只是一个ISO-9660的扩展,而不是单独的卷,因此在添加文件后再改属性的话,UltraISO就简单地把RockRidge文件名直接指向它已经转换好ISO-9660文件名(注意,是已转换好,也就已格式化过的文件名)就算了,但就忽略了若用户选择ISO-9660不支持长文件名的时候,原来文件的长文件名信息就丢失了的情况。若先设置属性,再添加文件,则ISO-9660文件名和RockRidge文件名就分开处理,于是就没问题了。
不知道这样分析对不对,但结果是肯定没错的。我用的是7.55版,不知道其它版本有没有这个问题,要使用到RockRidge文件名的人可就要小心你的操作顺序了。希望在以后的版本中这些问题能改善一下,修一修这个BUG(不知道算不算BUG,但肯定不是用户想要的,在MagicISO中就没这种问题,但我还是想支持UltraISO)。