как вызвать NPP_StreamAsFile

#npapi

#npapi

Вопрос:

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

Ответ №1:

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

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

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

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

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