Взаимодействие с генерируемым DLL во время выполнения в C ++C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Взаимодействие с генерируемым DLL во время выполнения в C ++

Сообщение Anonymous »

Я застрял с небольшой (огромной) проблемой в текущем проекте. Я расширяю систему, которая была написана в C ++ и использует широкое использование методов и объектов шаблона. В частности, я пытаюсь реконфигурировать основной компонент системы, используя предоставленный шаблон строителя, по
  • генерирование кода из файла конфигурации во время выполнения
  • Компилирование этого кода в общую библиотеку
  • объединяет, что совместно использует библиотеку (dlopen ()
  • , которая совместила с этой библиотекой (dlopen ()
  • . /> Вызов функции из этой общей библиотеки (dlsym () )
  • Возвращение оттуда
    • Я не могу изменить существующую архитектуру системы, поэтому я должен работать с этим шаблонным строителем. Функции с dlsym () )

    Любые идеи или указатели относительно того, как я мог бы это реализовать? Не обязательно использовать RTTI, только основные ограничения не могут измениться (мне нужно генерировать DLL во время выполнения).
    Я также думал о передаче ссылки на экземпляр Builder из Main () функции в DLL, но проблема в том, что DLL находится в позиции, где я не замечает, что я не смогу о том, что я не сможет, что я не смогу о том, что я не сможет, что я не смогу о том, что я не сможет. Функции, которые являются уникальными для этого состояния (функции, которые необходимы для настройки в настоящее время построенного объекта).
    Я буду очень благодарен за каждый и любой намек или предложение, которое я могу получить!

    Подробнее здесь: https://stackoverflow.com/questions/797 ... d-dll-in-c
Ответить

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

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

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

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

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