В каталог приложения кладётся подкаталог с dll. Их кол-во и названия не известны. Но зато известны методы — их всего два — одинаковые для всех dll (например, myfunc1 и myfunc2). Аргументы методов известны.
Вопрос1 (главный): как динамически подгрузить все dll из подкаталога?
Вопрос2 (вторичный): как при этом преодолеть проблему совпадающих имен методов в разных dll. Видимо, нужно использовать алиасы (а значит, отказаться от dllImport?).
Re: Динамически подгрузить все dll, не зная кол-во и названи
Здравствуйте, pus, Вы писали:
pus>Вопрос2 (вторичный): как при этом преодолеть проблему совпадающих имен методов в разных dll. Видимо, нужно использовать алиасы (а значит, отказаться от dllImport?).
Здравствуйте, pus, Вы писали:
pus>Здравствуйте, _FRED_, Вы писали:
_FR>>Судя по dllImport — библиотеки не .NET-овский, а нативные? Тогда LoadLibrary+GetProcAddres (в .NET 2.0+) _FR>>Например, как здесь: Re[13]: Так и не решил проблему с вызовом метода из С++ библ
Здравствуйте, pus, Вы писали:
pus>Здравствуйте, _FRED_, Вы писали:
_FR>>Судя по dllImport — библиотеки не .NET-овский, а нативные? Тогда LoadLibrary+GetProcAddres (в .NET 2.0+) _FR>>Например, как здесь: Re[13]: Так и не решил проблему с вызовом метода из С++ библ
pus>Прошу прощения — не указал важные подробности: pus>.Net 1.1. pus>Библиотеки не .NET-овские, а Delphi7.
pus>В 1.1 не нашел LoadLibrary.
ну значит все тоже самое, но через managed C++
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[2]: Динамически подгрузить все dll, не зная кол-во и назв
Здравствуйте, _FRED_, Вы писали:
_FR>Судя по dllImport — библиотеки не .NET-овский, а нативные? Тогда LoadLibrary+GetProcAddres (в .NET 2.0+)
Объясните, плиз, а нельзя ли использовать обычные API LoadLibrary+GetProcAddress? Насколько я понял, они есть в обычных виндовых dll (kernel32.dll, user32.dll).
Re[3]: Динамически подгрузить все dll, не зная кол-во и назв
Здравствуйте, pus, Вы писали:
_FR>>Судя по dllImport — библиотеки не .NET-овский, а нативные? Тогда LoadLibrary+GetProcAddres (в .NET 2.0+)
pus>Объясните, плиз, а нельзя ли использовать обычные API LoadLibrary+GetProcAddress? Насколько я понял, они есть в обычных виндовых dll (kernel32.dll, user32.dll).
Под "нативные" я как раз "обычные API" и имел в виду.
Если почитаешь топик, на который я дал ссылку да поищешь по этому форуму, сможешь узнать, можно ли и как использовать "LoadLibrary+GetProcAddress" на первом фреймворке Я могу ли сказать, что ни одного способа просто не видел, но, быть может, просто просмотрел.
Help will always be given at Hogwarts to those who ask for it.
Re[2]: Динамически подгрузить все dll, не зная кол-во и назв
От:
Аноним
Дата:
11.12.06 14:10
Оценка:
конечно можно, вам только нужно будет освободить память после использования функции..