У меня есть приложение, которое использует LoadLibrary в Windows для динамической загрузки плагинов. Однако некоторые из плагинов имеют другие зависимые DLL, такие как DLL файлы базы данных. Когда вы пытаетесь загрузить такую DLL, а одна из зависимых DLL не существует, вы получаете неприятный диалог Windows:
"Программа не может запускаться из-за отсутствия xxx.ddl на вашем компьютере. Попробуйте переустановить программу, чтобы устранить эту проблему."
Есть ли какой-либо простой способ избежать этого диалога? Я надеялся, что можно использовать LoadLibraryEx и передать флаг, который говорит "не дайте мне этот раздражающий диалог", но это не похоже на него.
Я бы хотел, чтобы приложение обрабатывало эту ошибку, вместо того, чтобы обрабатывать ее для меня, особенно если текст сообщения неверен (проблема не в том, что программа не может запускаться, а в программе работает довольно счастливо, он просто не может загрузить этот плагин).
То, что я хотел бы избежать, - это переписать плагины с этими внешними зависимостями, чтобы заставить их самостоятельно выполнять динамическую загрузку любых зависимых модулей, а затем запрашивать любые точки входа.
В любом случае, любые предложения были бы с благодарностью получены.