Экспорт глобального символа из DLL-библиотеки Delphi

Я пытаюсь создать Gecko 2.0-совместимую DLL в Delphi.

Ранее (до Gecko 2.0) DLL была необходима для экспорта функции NSGetModule (). Это сработало без нареканий.

Начиная с Firefox 4, моя DLL загружается (я проверил это через точку останова в моем разделе инициализации), но моя функция NSGetModule () больше не вызывается. Это спроектированное поведение, потому что начиная с Gecko 2.0 (Firefox 4), двоичный компонент не должен экспортировать функцию NSGetModule ():

https://developer.mozilla.org/en/XPCOM/XPCOM_changes_in_Gecko_2.0#Binary_components

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

В C ++ вы экспортируете (глобальный) символ данных следующим образом:

define NSMODULE_DEFN(_name) extern "C" NS_EXPORT mozilla::Module const *const NSModule

Мой вопрос: как мне сделать это в Delphi? Как экспортировать глобальную переменную?

Я ценю ваши отзывы.

Ответы на вопрос(1)

Ваш ответ на вопрос