public void RunProfile(string name, string listFile) { profileNode node = GetNode(name); if (node != null) { Type t = Type.GetType(internalList[node]); InternalProfileBase c = Activator.CreateInstance(t) as InternalProfileBase; c.CheckIfAvailable(); progressInfo = c; c.RunThreads(listFile); progressInfo = null; progress++; } }
public static List <InternalProfileBase> InitProfiles() { //Type[] types = GetLoadableTypes(Assembly.GetExecutingAssembly()); //Type[] types = Assembly.GetExecutingAssembly().GetTypes(); Type [] types; List <InternalProfileBase> myTypes = new List <InternalProfileBase>(); if (Assembly.GetExecutingAssembly() == null) { throw new ArgumentNullException("Assembly cannot be readed"); } try { types = Assembly.GetExecutingAssembly().GetTypes(); } catch (ReflectionTypeLoadException e) { types = e.Types; } RemoveProfilesFile(); foreach (Type t in types) { if (t != null && t.IsSubclassOf(typeof(InternalProfileBase))) { try { InternalProfileBase c = Activator.CreateInstance(t) as InternalProfileBase; c.CheckIfAvailable(); myTypes.Add(c); } catch (Exception ex) { Console.WriteLine(ex); } } } return(myTypes); }