C ++ xpcom Компоненты компилируют успех, но не могут получить доступ к идентификатору контрактаC++

Программы на C++. Форум разработчиков
Ответить Пред. темаСлед. тема
Anonymous
 C ++ xpcom Компоненты компилируют успех, но не могут получить доступ к идентификатору контракта

Сообщение Anonymous »

c ++ xpcom Компоненты компиляции успеха, но не могут получить доступ к идентификатору контракта
Сообщение об ошибке: < /p>

Код: Выделить всё

TypeError: Components.classes["@cozmixng.org/xpcom-sample/Calc;1"] is undefined
< /code>

Я проверяю исходный код xpcom-test из github, внесите некоторые изменения для компиляции на Mac Osx,
mycalcmodule.cpp < /p>

#include "mozilla/ModuleUtils.h"
#include "nsIClassInfoImpl.h"

#include "myCalc.h"

NS_GENERIC_FACTORY_CONSTRUCTOR(myCalc)

NS_DEFINE_NAMED_CID(MY_CALC_CID);

static const mozilla::Module::CIDEntry kCalcCIDs[] = {
{ &kMY_CALC_CID, false, NULL, myCalcConstructor },
{ NULL }
};
static const mozilla::Module::ContractIDEntry kCalcContracts[] = {
{ MY_CALC_CONTRACT_ID, &kMY_CALC_CID },
{ NULL }
};

static const mozilla::Module::CategoryEntry kCalcCategories[] = {
{ "my-category", "my-key", MY_CALC_CONTRACT_ID },
{ NULL }
};

static const mozilla::Module kCalcModule = {
mozilla::Module::kVersion,
kCalcCIDs,
kCalcContracts,
kCalcCategories
};

NSMODULE_DEFN(myCalcModule) = &kCalcModule;
< /code>

В этом коде экспортируйте модуль в динамическую библиотеку, вызовите его в JS < /p>

obj = Components.classes['@cozmixng.org/xpcom-
sample/Calc;1'].createInstance(Components.interfaces.myICalc);
Использовать xpcomviewer, не могу исправить @cozmixng.org/xpcom-mample/calc; 1 class!
Весь пакет здесь http://www.goseas.us/xpcom-test2.tar.gz!

Подробнее здесь: https://stackoverflow.com/questions/235 ... ontract-id
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Почему .max (Integer :: max) и .min (Integer :: min) компилируют на потоке Java 8?
    Anonymous » » в форуме JAVA
    0 Ответы
    111 Просмотры
    Последнее сообщение Anonymous
  • Почему .max (Integer :: max) и .min (Integer :: min) компилируют на потоке Java 8?
    Anonymous » » в форуме JAVA
    0 Ответы
    96 Просмотры
    Последнее сообщение Anonymous
  • GetSerializableExtra устарели и компилируют получение java, кроме ошибки
    Anonymous » » в форуме Android
    0 Ответы
    5 Просмотры
    Последнее сообщение Anonymous
  • Могут ли нарушения контракта привести к STD :: прекратить функции noExcept?
    Anonymous » » в форуме C++
    0 Ответы
    0 Просмотры
    Последнее сообщение Anonymous
  • Компоненты Spring Framework не могут разрешить пакет
    Anonymous » » в форуме JAVA
    0 Ответы
    9 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C++»