0

我有一个偏好条目并使用下面的语句来访问它的内容

var st = easyfa.branch.getComplexValue("mapstr",Components.interfaces.nsIPrefLocalizedString).data; 

这会引发异常:

*Component returned failure code: 0x804b000a (NS_ERROR_MALFORMED_URI) [nsIPrefBranch.getComplexValue]*

但是在手动设置首选项的值后(通过输入 about:config)错误消失了!?

4

2 回答 2

2

本地化首选项的默认值必须是.properties文件的 chrome URL,在该文件中查找首选项以定位结果字符串。假设 URL 指向一个语言环境文件,这允许值根据安装的语言而改变。

但是,您似乎想要一个简单的字符串首选项,您应该使用nsISupportsString界面检索它。

于 2011-02-20T23:59:48.227 回答
0

获取未设置的首选项的值总是会抛出。您必须将其包装在一个try-catch块中并相应地处理它。

于 2011-02-20T16:58:47.750 回答