Поиск в .exe и .dll методов и их запуск - C#
Формулировка задачи:
Необходимо реализовать программу, позволяющую просматривать содержимое .exe и .dll, т.е. выводить все методы, используемые в программе, их тип (это уже сделал). так же эта программа должна запускать выбранный метод. вот запуск как раз и не получается. использовал статейку от сюда http://itmodus.ru/articles/59, однако ни к чему путному это не привело
Решение задачи: «Поиск в .exe и .dll методов и их запуск»
textual
Листинг программы
openFileDialog1.Filter = "Сборка|*.exe;*.dll"; openFileDialog1.ShowDialog(); file = openFileDialog1.FileName; StreamReader sr = new StreamReader(file); try { richTextBox1.Text = ""; comboBox1.Items.Clear(); Assembly Ass = Assembly.LoadFrom(file); Type[] MyT = Ass.GetTypes(); Module[] MyM = Ass.GetModules(); foreach (Type t in MyT) { richTextBox1.Text = richTextBox1.Text + "Класс: " + t.FullName + "\nБазовый тип = " + t.BaseType.FullName; richTextBox1.Text = richTextBox1.Text + "\nМетод: "; MethodInfo[] MyMeth = t.GetMethods(); MethodAttributes MyMethAtr; foreach (MethodInfo me in MyMeth) { MyMethAtr = me.Attributes; if (me.Module == MyM[0]) { richTextBox1.Text = richTextBox1.Text + " " + me.Name + " - " + me.ReturnType.ToString() + ";"; comboBox1.Items.Add(me.Name); } } richTextBox1.Text = richTextBox1.Text + "\n-------\n"; } foreach (Module m in MyM) { richTextBox1.Text = richTextBox1.Text + "Файл: " + m.Name; } } catch { MessageBox.Show("Ошибка чтения"); } finally { sr.Close(); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д