public static void Init(DynamicLoaderPlugin dynamicLoaderPlugin) { if (IsInitialized) { return; } IsInitialized = true; Log = Console.Out; #if DEBUG DebugLog = Console.Out; #else DebugLog = TextWriter.Null; #endif DataPath = dynamicLoaderPlugin.DataPath; PluginsPath = dynamicLoaderPlugin.Preferences["Config"]["PluginsPath"].Value; if (string.IsNullOrEmpty(PluginsPath)) { PluginsPath = @".\UnityInjector\DynamicPlugins"; } PluginsPath = Path.GetFullPath(PluginsPath); DebugLog.WriteLine("DynamicPluginManager : PluginsPath = {0}", PluginsPath); AppDomainNameSuffix = ".appdomain"; if (!System.IO.Directory.Exists(PluginsPath)) { System.IO.Directory.CreateDirectory(PluginsPath); } DynamicLoaderPlugin = dynamicLoaderPlugin; AppDomains = new AppDomains(Log); DirectoryWatcher = new Helper.DirectoryWatcher(PluginsPath, "*.dll"); }