Firefox NPP_StreamAsFile返回不同的路径

Firefox NPP_StreamAsFile返回不同的路径,firefox,npapi,browser-plugin,Firefox,Npapi,Browser Plugin,我有一个插件,可以将一些数据流化并呈现出来。但是在更新到Firefox20之后,插件报告说它找不到该文件。在调查了这个问题之后,我发现NPP_StreamAsFile在Firefox 19和20之间返回了不同的路径 Windows 7操作系统 NPP_StreamAsFile-为流提供文件的本地路径。 Firefox 19: NPP_StreamAsFile返回“C:\Documents and Settings\Administrator\Local Settings\Application

我有一个插件,可以将一些数据流化并呈现出来。但是在更新到Firefox20之后,插件报告说它找不到该文件。在调查了这个问题之后,我发现NPP_StreamAsFile在Firefox 19和20之间返回了不同的路径

Windows 7操作系统 NPP_StreamAsFile-为流提供文件的本地路径。 Firefox 19: NPP_StreamAsFile返回“C:\Documents and Settings\Administrator\Local Settings\Application Data\Mozilla\Firefox\Profiles\jpgiohcq.default\Cache\1\78\87C58d01” 我们的插件检索此路径并处理数据

Firefox 20: NPP_StreamAsFile返回“C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\plugtmp-2\plugin svrel.zhp” 在调用NPP_DestroyStream后,将删除该文件。 在这种情况下,我们的插件无法找到该文件

但是,当我在使用Firefox20时运行Process Monitor时。在文件被销毁之前,会显示“将副本复制到缓存”文件夹

我已经在mozilla论坛上发布了我的问题。他们说他们改变了缓存中的实现,下载数据后由我们负责管理

我的问题是,我们的插件是否应该在NPP_销毁数据流之前复制数据?如果是,数据是否应保存在%APPDATA%应用程序文件夹中?我只是想确保遵循gecko插件开发的正确指南。我没有在其他地方成功地找到有关此过程的任何详细信息

我的问题是,我们的插件是否应该在NPP_销毁数据流之前复制数据

如果你想让它在事后留下,那么是的,你必须复制一份(参见)

流式传输数据的插件听起来像是要复制到临时目录(例如)