0

誰かがFirefoxコンポーネントをオーバーライドする方法を知っているかどうか疑問に思っていました. マニフェスト ファイルを使用して上書きしようとしましたnsHelperAppDlg.jsが、うまくいかないようです。これは私がしたことです:

resource:///components/nsHelperAppDlg.js myextension/components/nsHelperAppDlg.js をオーバーライドします

また、そのファイルを omni.ja ファイルから直接変更しようとしましたが、それもうまくいきませんでした。何か案は?

PS私はFirefox 10.0.2を使用しています

4

1 に答える 1

2

chrome://マニフェストでは、 URLのみをオーバーライドできます。XPCOM コンポーネントはchrome://URL 経由ではなく、コントラクト ID (@mozilla.org/helperapplauncherdialog;1この場合) 経由でアクセスされます。しかし、あなたは本当にコンポーネントを交換したくないのではないかと思います - それはめったに良い考えではありません. おそらく、「不明なファイルの種類」ダイアログをオーバーライドまたはオーバーレイする必要があります。このダイアログの URL はchrome://mozapps/content/downloads/unknownContentType.xul、次のようにオーバーライドできます。

chrome://mozapps/content/downloads/unknownContentType.xul をオーバーライドします chrome://myextension/content/unknownContentType.xul

于 2012-04-15T15:26:17.203 に答える