Учитывая ваши ограничения, ответ - нет.
Причина в том, что исполняемый файл не имеет никакой видимости в зависимости или "вызовы" DLL.Что касается исполняемого файла, он просто знает о самой DLL: во время компоновки исполняемый файл знает только о тех экспортах, которые он потребляет из DLL.Он собирается выполнить LoadLibrary () для библиотеки DLL (которая завершится ошибкой, если зависимости указанной библиотеки DLL не разрешимы), а затем вызвать экспорт этой библиотеки DLL.
Если вы не можете статически связываться с используемой библиотекойПо какой-то причине в DLL другой подход заключает в себе вызовы к указанной статической библиотеке.Это может быть проблемой из-за множества звонков, но есть автоматизированные инструменты, которые другие создали, чтобы помочь.В частности, я использовал это прежде, чтобы создать оболочку для DLL, которая экспортировала сотни функций, когда я хотел перехватить конкретную: http://www.codeproject.com/KB/DLL/CreateYourProxyDLLs.aspx