Как скрыть код расширения Firefox - PullRequest
2 голосов
/ 22 марта 2012

Я сделал панель инструментов IE от BHO с C #. И теперь я хочу сделать версию Firefox. Я планировал использовать xul, но он покажет пользователю исходный код. Кажется, DLL не очень хороший способ в Firefox.

Я попробовал какую-то панель инструментов, например Yahoo, Google, которая не будет создавать файлы в папке расширений. Как я могу сделать что-то подобное?

1 Ответ

1 голос
/ 09 апреля 2012

(см. Мое примечание об обфускации ниже)

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

До Gecko 2.0 вам приходилось использовать довольно эзотерический набор инструментов сборки Mozilla для включения скомпилированного кода в ваши расширения.

js-ctypes для спасения:

https://developer.mozilla.org/en/js-ctypes/Using_js-ctypes
https://developer.mozilla.org/en/js-ctypes/js-ctypes_reference

js-ctypesупрощает загрузку внешних DLL и привязку их API к функциям JavaScript.

Вам нужно будет скомпилировать несколько разных версий вашей DLL, и ваш JavaScript должен правильно определять платформу и загружать соответствующую DLL, но он в основном работает одинаково для всех платформ, как только вы вернетесь в JavaScriptland.

ctypes.libraryName помогает определить расширение DLL на текущей платформе (например, .dll для windows, .so для Unix).

Вы можете использовать другую информацию (например, navigator.userAgent), чтобы более конкретно определить, какая подплатформа (например: Windows 7 64-битная или Vista 32-битная).


Обновление:

Существует множество веских причин для включения скомпилированных библиотек DLL в ваши расширения / приложения (например, скорость, специальные возможности, сторонние библиотеки), но если ваша единственная цель - запутывание (скрытиеисходный код), затем ...

Я бы не беспокоился об этом, если бы я был вами.Технологические средства борьбы с пиратством не помогут вам продвинуться далеко в этом современном мире - если ваше программное обеспечение достаточно хорошо, чтобы привлечь внимание, кто-то взломает его.

Я просто забудуоб этом, и потратить немного денег на адвокатов.(Copyright: yay! Патенты: nay!)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...