Как я могу просто протестировать компонент XPCOM в последней версии Firefox?

#c #firefox #testing #xpcom

#c #firefox #тестирование #xpcom

Вопрос:

В последней версии Firefox я обнаружил, что при попытке использовать следующий код в веб-консоли:

 netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");

[10:33:00.787] Use of enablePrivilege is deprecated.  
Please use code that runs with the system principal (e.g. an extension) instead.
 

Для firefox 3.6 я всегда использую этот способ для простого тестирования некоторых моих компонентов XPCOM, это очень удобно. Но в последней версии firefox я обнаружил, что я больше не могу использоваться.

Итак, если в настоящее время я написал компонент C XPCOM, есть ли простой способ, которым я могу попытаться протестировать его, помимо необходимости писать и регистрировать другой test component ?

Конечно, любое предложение очень ценится.

Ответ №1:

Использование бинарного (C ) XPCOM очень сильно не рекомендуется (или, выражаясь точнее, МЕРТВО МЕРТВО МЕРТВО) в последних сборках Firefox:

MDN указывает альтернативы для получения двоичных компонентов XPCOM, хотя я не знаю, являются ли какие-либо улучшения для вашего сценария:

https://developer.mozilla.org/En/Firefox_addons_developer_guide/Using_XPCOM-Implementing_advanced_processes

Ранее бинарные компоненты теперь должны использовать js-ctypes:

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

Комментарии:

1. Спасибо за подробное предложение. На самом деле, я хочу использовать log4cplus в своих собственных компонентах, потому что это библиотека c , поэтому ее не очень легко использовать с js-ctypes, потому что экспортируемая таблица символов «искажает имена» компилятором.