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 に答える