как вызвать NPP_StreamAsFile - PullRequest
       10

как вызвать NPP_StreamAsFile

0 голосов
/ 07 апреля 2010

Привет, у меня есть plugin.dll, который содержит все функции npp. Я успешно внедрил его в свой плагин chrome, но я не знаю, как вызвать эту функцию NPP_StreamAsFile из моего javascript.Я понятия не имею.Есть так много параметров для передачи, о которых я понятия не имею.Помогите мне, пожалуйста.Спасибо заранее.

1 Ответ

4 голосов
/ 09 апреля 2010

Вы сами не звоните NPP_StreamAsFile(), это делает браузер. Существует три типа функций для NPAPI:

  • NP_ - функции ввода модуля плагина и т. Д.
  • NPN_ - интерфейс браузера, плагин вызывает их
  • NPP_ - интерфейс плагинов, браузер вызывает их

Вы также не можете просто получить доступ к NPP функциям напрямую из сценариев, вам нужно будет предоставить интерфейс для сценариев для вашего плагина.

Со стороны плагина процесс выглядит следующим образом:

  • сначала плагину необходимо вызвать NPN_NewStream() или NPN_GetURL(), чтобы создать поток
  • если это сработало, браузер вызывает NPP_NewStream(), вам нужно установить *stype на NP_ASFILE или NP_ASFILEONLY
  • , если вы указали NP_ASFILE, а файл не является локальным, потоковые данные постепенно доставляются через NPP_Write() / NPP_WriteReady()
  • когда поток завершен, браузер вызывает NPP_StreamAsFile().
...