Когда в C# вызываем функцию из DLL, то выглядит это, например, так:
[DllImport("NameDLL.dll")]
public static extern bool Func (string str, int param);
Всё работает без проблем, но непонятно, как вызывать функцию, если вместо конкретной "NameDLL.dll" из каталога программы нужно будет передать полный путь к библиотеке (например,если библиотека находится в подкаталоге программы), но не заранее заданнный, а тот, который определится в момент вызова (путь к приложению + заданное имя подкаталога + имя библиотеки). В C# можно получить путь к приложению, однако это будет string, а не const string, который и нужно передать внутрь DllImport. Преобразовать string в const string средствами C# вроде возможным не представляется (да и это, наверное, не совсем правильный путь).
Так каким образом можно динамически получить/передать полный путь к библиотеке в виде const string?
|