Расширение Mozilla - чтение стандартного внешнего процесса

Я пытаюсь бежать dvipng процесс из расширения Thunderbird с помощью Components.interfaces.nsIProcess, Мне нужно прочитать стандартный вывод процесса, но я не могу найти способ сделать это. Я нашел некоторые темы на nsIProcess2, но этот (как кажется) никогда не был полностью реализован с помощью stdout. Какие-либо предложения?

1 ответ

Решение

nsIProcess2 не имеет отношения - это было реализовано, но позже свернуто в nsIProcess, Это было только о запуске процессов асинхронно.

Соответствующие ошибки: ошибка 484246 и ошибка 68702. Последнее было решено, но пока код не поставляется с Firefox/Thunderbird по умолчанию (это довольно много кода, который не нужен ни Firefox, ни Thunderbird). Итак, ваши варианты:

  • Создайте IPCModule самостоятельно и сделайте его частью своего расширения - не рекомендуется, потому что это вызовет много проблем.
  • Создайте нативную библиотеку, которая будет вызывать dvipng для вас используйте его через js-ctypes - должно быть самое простое решение.
  • Очередь dvipng в библиотеку и использовать ее напрямую через js-ctypes - возможно, не слишком сложно, это также даст вам лучшую производительность.
Другие вопросы по тегам