Re: C# - вызов из библиотеки по полному пути
От: Igor Vyatkin  
Дата: 19.02.11 22:24
Оценка: 1 (1)
Здравствуйте, Garris, Вы писали:

G>Когда в C# вызываем функцию из DLL, то выглядит это, например, так:

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

LoadLibrary (PInvoke) + GetProcAddress (PInvoke)+ Marshal.GetDelegateForFunctionPointer.
Ы?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.