/// <summary> /// Posts the startup. /// </summary> public static void PostStartup() { var assemblyFinderParams = new AssemblyFinderParams[] { GetAppParams(), GetPluginParams() }; var assemblies = new List <Assembly>() { }; foreach (var assemblyFinderParam in assemblyFinderParams) { assemblies.AddRange(AssemblyFinder.Find(assemblyFinderParam)); } PostStartupFinder.FindAndExecute(assemblies); }
/// <summary> /// Gets the application parameters. /// </summary> /// <returns>AssemblyFinderParams.</returns> private static AssemblyFinderParams GetAppParams() { var appPath = AppDomain.CurrentDomain.BaseDirectory; var appParams = new AssemblyFinderParams() { EmbededResourceKey = Constants.MainKey, Path = appPath, AssemblyPatternMatch = nameof(IronyModManager), SearchOption = SearchOption.TopDirectoryOnly }; return(appParams); }
/// <summary> /// Gets the plugin parameters. /// </summary> /// <returns>AssemblyFinderParams.</returns> private static AssemblyFinderParams GetPluginParams() { var pluginsPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, DIContainer.PluginPathAndName); var pluginParams = new AssemblyFinderParams() { EmbededResourceKey = Constants.PluginKey, Path = pluginsPath, AssemblyPatternMatch = nameof(IronyModManager), SearchOption = SearchOption.AllDirectories, }; return(pluginParams); }