我已将我的 Thunderbird 配置文件(名为 的目录f4gokpr4.default
)从一台 Windows 10 计算机复制到另一台 Windows 10 计算机。帐户名称相同,我知道的所有绝对路径也相同。
但是现在我的 POP 账户中的很多文件夹在界面上都不见了。顶层文件夹还在,但是里面没有字母,也没有子文件夹。
共同点是这些目录具有西里尔文/非拉丁文名称,如 ,Работа
并包含特殊字符Путешествия/Отдых
(即单个文件夹,而不是子文件夹)。在配置文件夹中,它们对应于文件/目录Работа
/ Работа.msf
/ Работа.sbd
,以及类似Путешествияf88e4aec
/ Путешествияf88e4aec.msf
/的内容Путешествияf88e4aec.sbd
。西里尔字符按原样存储,特殊字符后的所有内容都会被截断。
然而,在新系统上,Thunderbird 认为这些文件夹应该存储在新创建的目录中,如44d8f9af
/ 44d8f9af.msf
/ 44d8f9af.sbd
。这些目录是在配置文件中创建的,是空的,并且没有从以前的位置移动任何文件/目录。
全拉丁目录工作正常。
我如何让 Thunderbird 使用旧目录而不是尝试为它们赋予新名称?
答案1
我找到了一个笨拙的解决方案Mozilla 支持:事实证明,我的配置文件是在一台用作Russian (Russia)
系统区域设置(Current language for non-Unicode programs
)的机器上创建的,但新机器却有English (United States)
。
解决方案:切换新机器以使用Russian (Russia)
区域设置,再从备份中恢复一次。
据我所知,这会影响默认的非 Unicode 编码,西里尔字符可以使用 进行编码Russian (Russia)
,但不能使用English (United States)
。看来 Thunderbird 要么使用非 Unicode API 来查询文件系统,要么使用此系统设置来确定如何在磁盘上存储目录。