Ошибка компиляции примера протокола Firefox Hander Gecko SDK 3.6

Я получаю следующую ошибку при попытке скомпилировать пример реализации обработчика протокола firefox. Я использую Gecko SDK 3.6, Visual Studio 2010 в Windows Vista. Я думаю, что образец очень старый и не был собран с использованием версии 3.6 SDK.

1> nsKeywordModule.obj: ошибка LNK2019: неразрешенный внешний символ "__declspec(dllimport) unsigned int __cdecl NS_NewGenericModule2(struct nsModuleInfo const *, класс nsIModule * *)" (_ imp? NS_NewG2@mail_name@PoGenMoNenMoNM) в функции _NSGetModule

1> nsKeywordProtocolHandler.obj: ошибка LNK2019: неразрешенный внешний символ "__declspec(dllimport) public: __thiscall nsFixedCString:: nsFixedCString (char *, unsigned int, unsigned int)" (_ imp?? 0nsFixedCString @) @ @ZA в функции "public: __thiscall nsCAutoString:: nsCAutoString (void)" (?? 0nsCAutoString @@ QAE @ XZ)

1> nsKeywordProtocolHandler.obj: ошибка LNK2001: неразрешенный внешний символ "__declspec(dllimport) public: статический символ * nsCharTraits:: sEmptyBuffer" (_ imp? SEmptyBuffer@?$ NsCharTraits @ D @@ 2PADA)

1> nsKeywordProtocolHandler.obj: ошибка LNK2019: неразрешенный внешний символ "__declspec(dllimport) public: __thiscall nsACString_internal:: nsACString_internal (char *, unsigned int, unsigned int)" (_ imp?? 0nsACString_internal P) @ @ QA в функции "protected: __thiscall nsCString::nsCString(char *,unsigned int,unsigned int)" (??0nsCString@@IAE@PADII@Z)

1 ответ

Решение

Я считаю, что образец использовал полную реализацию Mozilla для получения заголовочных файлов. Теперь, поскольку у нас есть gecko sdk, все внутренние связи должны быть перенесены для использования замороженных связей, поскольку внутренняя связь не поддерживается gecko sdk 3.6.

Так что в моем случае я изменил nsAString.h на nsStringAPI.h и следовал другим рекомендациям

Другие вопросы по тегам