Firefox Gecko SDK: NPP_GetValue не вызывается - PullRequest
2 голосов
/ 10 февраля 2010

Я опробовал образец NPRuntime, поставляемый с Gecko SDK 1.9.1, с помощью этой ссылки .

Отлично работает с Firefox 3.6.

Следуя вышеуказанным шагам, я создал новый плагин для скриптинга (npmyplugin.dll). В настоящее время я помещаю npmyplugin.dll в папку, отличную от Firefox/plugins. Я регистрирую связанный MIME-тип и путь к плагину в реестре. Плагин загружается правильно. Но теперь браузер не звонит NPP_GetValue.

Я подозревал, что это должно быть потому, что я помещаю плагин в каталог, отличный от Firefox/plugins. Следовательно, я сделал то же самое с npruntime.dll (пример, который поставляется с Gecko SDK). Удивительно npruntime.dll сценарии работали. Пожалуйста, укажите, не упустил ли я что-то важное при создании нового плагина.

Ответы [ 2 ]

3 голосов
/ 03 августа 2010

NPP_GetValue не вызывается для получения NPObject, пока во многих случаях вы не получите первый доступ к нему с помощью javascript. Когда вы делаете getElementById, он совершает вызов.

Вероятно, выполняются другие вызовы GetValue, но вы их не видите, потому что не обрабатываете их. Однако, это все еще не гарантировано.

0 голосов
/ 06 марта 2010

Извините за столь поздний ответ. Я как-то решил проблему. Я встраивал плагин с помощью тега

тогда я написал небольшой код JavaScript

var MyWorkingPlugin = document.getElementById ('MyPlugin');

Кажется, что после выполнения вышеупомянутого javascript был вызван NPP_GetValue. В настоящее время у меня нет убедительной причины, почему это произошло, но это сработало, и я счастлив на данный момент. Если кто-нибудь может объяснить вышеупомянутое поведение, пожалуйста, сообщите нам.

...