1
Firefoxに保存されているユーザー名とパスワードを取得し、そのアカウントをThunderbirdにインポートするThunderbird拡張機能を実行しています。この結果、nsILoginManagerが必要になりますが、Thunderbirdの拡張機能をどのように動作させるかはわかりません。それは可能ですか?Thunderbird内線からFirefox XPCOMコンポーネントを呼び出す
Firefoxに保存されているユーザー名とパスワードを取得し、そのアカウントをThunderbirdにインポートするThunderbird拡張機能を実行しています。この結果、nsILoginManagerが必要になりますが、Thunderbirdの拡張機能をどのように動作させるかはわかりません。それは可能ですか?Thunderbird内線からFirefox XPCOMコンポーネントを呼び出す
あなたはほとんどできません。 XPCOMに加えて、さまざまなプロセスで機能しないだけでなく、複雑さは次のとおりです。
あなたができる最善のは、次のようになります。firefox -url file://foo/bar/extension.xpi
のようなコマンドラインで
extension.xpi
をインストールするように要求されていることを確認します。ブラウザを再起動する必要がないように、bootstrapped extensionにする必要があります。nsILoginManager
(ユーザーにはマスターパスワードが定義されている場合はパスワードプロンプトが表示されます)から必要なデータを取得し、Thunderbirdに送り返します。これはもちろん、滑らかなユーザーエクスペリエンスではありません。 2つの拡張機能(Thunderbirdで1つ、Firefoxでもう1つ)がどのように通信するかに関しては、TCP socketsがおそらく最も簡単な方法でしょう。 Thunderbird拡張機能はサーバーソケットを作成し、Firefox拡張機能が接続するのを待ちます。
ありがとうございます。あなたの質問に答えるために、nsILoginManagerは現在のプロファイルフォルダに移動し、key3.dbとsignons.sqliteを使用するので、Firefoxが動作しているかどうかは関係ありません。これは複数のFirefoxプロファイルでも機能します。私が直面している問題は、現在のkey3.dbを上書きすることが不可能なので、これらの新しいkey3.dbおよびsignons.sqliteファイルを使用するようにnsILoginManagerを作成する方法です。このための回避策はありますか? nsILoginManagerを使用できない場合は、拡張機能で直接解読することを検討していますが、その設定を見つけることはできません。 – wayne