Я разрабатываю приложение, которое позволит пользователям вызывать внешний код как из управляемых, так и из родных .dll. Пользователи смогут указать, какую библиотеку/метод/функцию вызывать во время выполнения (она будет сохранена в файле конфигурации).Назовите собственный код, указанный во время выполнения
Я знаю, как это сделать, используя pinvoke для родных библиотек, если я знаю, какую dll/функцию я хочу вызвать во время компиляции, но я не могу найти никакой информации о том, как это сделать во время выполнения.
По сути то, что я хотел бы сделать, это вызвать метод:
int result = ExecuteNativeFunction("someLibrary.dll", "foo");
и это сделать что-то эквивалентное:
[DllImport("someLibrary.dll")]
static extern int foo();
...
int result = foo();
Это то, что я ищу, хотя я надеялся, что смогу избежать Reflection.Emit. –