Подключение сторонних DLL и вызов функции
От: DJ-SPHINX  
Дата: 14.09.09 05:59
Оценка:
Добрый день всем!
Меня беспокоит следующий вопрос, который мне необходимо решить как можно скорее:
есть 3 dll-ки написанные на NET и находятся в папке приложения (Application.Startup + @"\dlls\"). В окне приложении имеется 3 кнопки для вызова соответствующих функции сторонних библиотек.
Пользователь приложения:
1- при нажатии на Button1 должен вызвать функцию MainRun() реализованную в 1-ой Dll,
2- при нажатии на Button2 должен вызвать функцию MainRun() реализованную в 2-ой Dll,
3- при нажатии на Button3 должен вызвать функцию MainRun() реализованную в 3-ой Dll.
Название библиотек может изменяться. Поэтому необходимо при инициализации или загрузке формы получить название всех трех Dll из настроек приложения и подключить библиотеки для работы с ними. Вопрос: как динамически менять названия подключаемых библиотек и вызывать одноименные функции, но в разных библиотеках?
P.S.:
string DllPathName = "dllimp.dll";
[DllImport(Application.Startup + @"\dlls\" + DllPathName)] — не принимает. Необходимо постоянное значение пути к импортируемой Dll.
Буду очень признателен за любую оказанную помощь!
Re: Подключение сторонних DLL и вызов функции
От: vit_as Россия  
Дата: 14.09.09 06:05
Оценка:
Здравствуйте, DJ-SPHINX, Вы писали:

DS>Добрый день всем!

DS>Меня беспокоит следующий вопрос, который мне необходимо решить как можно скорее:
DS>есть 3 dll-ки написанные на NET и находятся в папке приложения (Application.Startup + @"\dlls\"). В окне приложении имеется 3 кнопки для вызова соответствующих функции сторонних библиотек.
DS>Пользователь приложения:
DS>1- при нажатии на Button1 должен вызвать функцию MainRun() реализованную в 1-ой Dll,
DS>2- при нажатии на Button2 должен вызвать функцию MainRun() реализованную в 2-ой Dll,
DS>3- при нажатии на Button3 должен вызвать функцию MainRun() реализованную в 3-ой Dll.
DS>Название библиотек может изменяться. Поэтому необходимо при инициализации или загрузке формы получить название всех трех Dll из настроек приложения и подключить библиотеки для работы с ними. Вопрос: как динамически менять названия подключаемых библиотек и вызывать одноименные функции, но в разных библиотеках?
DS>P.S.:
DS>string DllPathName = "dllimp.dll";
DS>[DllImport(Application.Startup + @"\dlls\" + DllPathName)] — не принимает. Необходимо постоянное значение пути к импортируемой Dll.
DS>Буду очень признателен за любую оказанную помощь!

Можно воспользоваться методом http://msdn.microsoft.com/ru-ru/library/system.reflection.assembly.load.aspx
Re: Подключение сторонних DLL и вызов функции
От: Uzzy Россия  
Дата: 14.09.09 07:54
Оценка:
Здравствуйте, DJ-SPHINX, Вы писали:

DS>Добрый день всем!

DS>Меня беспокоит следующий вопрос, который мне необходимо решить как можно скорее:
DS>есть 3 dll-ки написанные на NET и находятся в папке приложения (Application.Startup + @"\dlls\"). В окне приложении имеется 3 кнопки для вызова соответствующих функции сторонних библиотек.

Очень похоже на операции с плагинами.
Re: Подключение сторонних DLL и вызов функции
От: QrystaL Украина  
Дата: 14.09.09 09:49
Оценка:
Здравствуйте, DJ-SPHINX, Вы писали:

DS>Название библиотек может изменяться. Поэтому необходимо при инициализации или загрузке формы получить название всех трех Dll из настроек приложения и подключить библиотеки для работы с ними. Вопрос: как динамически менять названия подключаемых библиотек и вызывать одноименные функции, но в разных библиотеках?


Посмотрите в сторону System.AddIn
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.