Настроить имя модуля DLL во время LoadLibrary - PullRequest
5 голосов
/ 17 ноября 2011

Я хочу загрузить во время выполнения сторонний бинарный плагин (P.dll) в моем приложении (A.exe). Этот плагин был создан для другого приложения (B.exe).

Плагин имеет неявный импорт dll для модуля B.exe, например:

  • Имя модуля: B.exe
  • func1
  • func2
  • FUNC3

Я экспортировал функции func1, func2 и func3 из A.exe, но не могу загрузить dll с помощью LoadLibrary, потому что нет модуля с именем "B.exe".

Есть ли что-то лучше, чем переименовать мое приложение "B.exe" или исправить P.dll в PE?

Спасибо

Кирилл

1 Ответ

1 голос
/ 02 декабря 2011

Вы можете создать поддельный B.exe (на самом деле это может быть DLL) и перенаправить экспорт B.exe в A.exe.

Перенаправление может быть выполнено путем пересылки экспорта, см. Раздел «Пересылка экспорта». здесь .

...