public bool StartPlugin(string name)
        {
            if (PluginContainers.ContainsKey(name))
            {
                if (!PluginContainers[name].Plugin.Active)
                {
                    var Plugin = PluginContainers[name].Plugin;
                    if (Plugin is IDialogPlugin)
                    {
                        IDialogPlugin plugin = Plugin as IDialogPlugin;
                        var           item   = new ToolStripMenuItem
                        {
                            Name = "ToolMenuItem_" + Plugin.PluginName,
                            Text = plugin.ToolMenuTitle,
                            Tag  = plugin
                        };
                        if (Plugin.MenuIcon != null)
                        {
                            item.Image = Plugin.MenuIcon;
                        }
                        item.Click += dialogPlugin_Click;
                        ((ToolStripMenuItem)(Main.MainMenuStrip.Items["StripMenu_Tool"])).DropDownItems.Add(item);
                    }
                    if (Plugin is IDockPlugin)
                    {
                        IDockPlugin plugin      = Plugin as IDockPlugin;
                        DockContent dockContent = plugin.GetDockWindow() as DockContent;
                        dockContent.HideOnClose = true;
                        dockContent.Name        = "DockWindow_" + Plugin.PluginName;
                        var item = new ToolStripMenuItem
                        {
                            Name = "ViewMenuItem_" + Plugin.PluginName,
                            Text = plugin.ViewMenuTitle,
                            Tag  = dockContent
                        };
                        if (Plugin.MenuIcon != null)
                        {
                            item.Image = Plugin.MenuIcon;
                        }
                        item.Click += menuitem_Click;
                        ((ToolStripMenuItem)(Main.MainMenuStrip.Items["StripMenu_View"])).DropDownItems.Add(item);

                        Main.SubForms.Add(dockContent);
                    }
                    Plugin.Active = true;
                    bool b = Plugin.StartPlugin(Main);
                    if (b)
                    {
                        Utility.Logger.Add(2, string.Format("插件 {0}({1}) 已启动。", Plugin.PluginName, Plugin.Version));
                    }
                    else
                    {
                        Utility.Logger.Add(2, string.Format("插件 {0}({1}) 启动失败。", Plugin.PluginName, Plugin.Version));
                    }
                    return(b);
                }
            }
            return(false);
        }
        public bool AddPlugin(ElectronicPlugin Plugin)
        {
            Plugins[Plugin.PluginName] = Plugin;
            if (Plugin is IDialogPlugin)
            {
                IDialogPlugin plugin = Plugin as IDialogPlugin;
                var           item   = new ToolStripMenuItem
                {
                    Name = "ToolMenuItem_" + Plugin.PluginName,
                    Text = plugin.ToolMenuTitle,
                    Tag  = plugin
                };
                if (Plugin.MenuIcon != null)
                {
                    item.Image = Plugin.MenuIcon;
                }
                item.Click += dialogPlugin_Click;
                ((ToolStripMenuItem)(Main.MainMenuStrip.Items["StripMenu_Tool"])).DropDownItems.Add(item);
            }
            if (Plugin is IDockPlugin)
            {
                IDockPlugin plugin      = Plugin as IDockPlugin;
                DockContent dockContent = plugin.GetDockWindow() as DockContent;
                dockContent.HideOnClose = true;
                dockContent.Name        = "DockWindow_" + Plugin.PluginName;
                var item = new ToolStripMenuItem
                {
                    Name = "ViewMenuItem_" + Plugin.PluginName,
                    Text = plugin.ViewMenuTitle,
                    Tag  = dockContent
                };
                if (Plugin.MenuIcon != null)
                {
                    item.Image = Plugin.MenuIcon;
                }
                item.Click += menuitem_Click;
                ((ToolStripMenuItem)(Main.MainMenuStrip.Items["StripMenu_View"])).DropDownItems.Add(item);

                Main.SubForms.Add(dockContent);
            }
            bool b = Plugin.StartPlugin(Main);

            if (b)
            {
                Utility.Logger.Add(2, string.Format("插件 {0}({1}) 已加载。", Plugin.PluginName, Plugin.Version));
            }
            else
            {
                Utility.Logger.Add(2, string.Format("插件 {0}({1}) 加载失败。", Plugin.PluginName, Plugin.Version));
            }
            return(b);
        }