Как написать плагин NPAPI с функциональностью WScript.Shell - PullRequest
0 голосов
/ 02 сентября 2010

Я очень новичок в веб-разработке и пишу некоторый javascript, который использует WScript.Shell через ActiveX. Я знаю, что браузеры, кроме IE, не поддерживают ActiveX.

После того, как я покопался в Google, я обнаружил, что могу сделать что-то подобное во всех браузерах на основе веб-набора через NPAPI. Я даже не знаю, с чего начать, когда дело доходит до этого. Можно ли делать то, что я после через NPAPI? Если так, с чего бы мне начать?

Ответы [ 2 ]

1 голос
/ 05 сентября 2010

Пока вы заботитесь только о Windows, вы можете просто использовать плагин NPAPI, чтобы обернуть существующий WScript.Shell - обратите внимание, однако, что плагины должны быть встроены в страницу; нет эквивалента для new ActiveXObject("..."). Это также означает, что вы должны продублировать интерфейс сценариев или написать для него автоматический диспетчер.
Чтобы написать плагин, взгляните на проект FireBreath (отказ от ответственности: я его совладелец), который уже дает вам решения для наиболее распространенных задач. Если вы хотите выполнить автоматическую диспетчеризацию для интерфейса сценариев, взгляните на реализацию ff-activex-host (в частности scriptable.h и axhost.cpp).

0 голосов
/ 10 ноября 2011

Хотя вы не можете сделать new ActiveXObject, ваш javascript может добавить тег объекта в DOM, например,

var plugin = document.createElement('div');
plugin.innerHTML = "<OBJECT id='plugin0' blah blah blah ></OBJECT>";
document.body.appendChild(plugin);
...