一部のデータをストリーミングしてレンダリングするプラグインがあります。しかし、Firefox 20 に更新した後、プラグインはファイルが見つからないと報告しました。この問題を調査した結果、NPP_StreamAsFile が Firefox 19 と 20 の間で異なるパスを返すことがわかりました。
Windows 7 OS NPP_StreamAsFile - ストリーム用のファイルのローカル パスを提供します。Firefox 19: NPP_StreamAsFile return "C:\Documents and Settings\Administrator\Local Settings\Application Data\Mozilla\Firefox\Profiles\jpgiohcq.default\Cache\1\78\87C58d01" プラグインはこのパスを取得してデータを処理します
Firefox 20: NPP_StreamAsFile return "C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\plugtmp-2\plugin-svrel.zhp" NPP_DestroyStream が呼び出された後、ファイルが削除されます。その場合、プラグインはファイルを見つけることができません。
ただし、Firefox 20 を使用しているときに Process Monitor を実行すると、ファイルが破棄される前にキャッシュ フォルダーにコピーされているように見えます。
問題を mozilla フォーラムに投稿しました。彼らは、キャッシュ内の実装を変更したと述べており、ダウンロード後のデータの管理は私たちの責任です。
私の質問は、NPP_DestroyStream がデータを破棄する前に、プラグインでデータのコピーを作成する必要があるかどうかです。その場合、データは %APPDATA% アプリケーション フォルダに保存されますか? gecko プラグイン開発の正しいガイドラインに従っていることを確認したいだけです。他の場所では、このプロセスに関する詳細を見つけることができませんでした。