我有一个插件可以流式传输一些数据并渲染它。但是更新到 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 时运行进程监视器时。文件似乎在被销毁之前被复制到缓存文件夹。
我已经在 Mozilla 论坛上发布了我的问题。他们说他们改变了缓存中的实现,下载后管理数据是我们的责任。
我的问题是我们的插件是否应该在 NPP_DestroyStream 销毁数据之前复制数据?如果是这样,数据是否应该保存在 %APPDATA% 应用程序文件夹中?我只是想确保我遵循了正确的壁虎插件开发指南。我没有在其他地方成功找到有关此过程的任何详细信息。