コード例 #1
0
        public override bool LoadPluginDlls()
        {
            AppDomain         appDomain = GetBaseAppDomain();
            IPluginRunContext obj       = GetContext(appDomain);

            return(obj.LoadPluginDlls());
        }
コード例 #2
0
        public override IPlugin ExecutePlugin()
        {
            AppDomain         appDomain = GetBaseAppDomain();
            IPluginRunContext obj       = GetContext(appDomain);

            return(obj.ExecutePlugin());
        }
コード例 #3
0
        public override void CloseForm()
        {
            AppDomain         appDomain = GetBaseAppDomain();
            IPluginRunContext obj       = GetContext(appDomain);

            obj.CloseForm();
        }
コード例 #4
0
        public override IPlugin GetPlugin(string url)
        {
            AppDomain         appDomain = GetBaseAppDomain();
            IPluginRunContext obj       = GetContext(appDomain);

            return(obj.GetPlugin(url));
        }
コード例 #5
0
        public override bool ClosePlugin(bool isClosingForm)
        {
            AppDomain         appDomain = GetBaseAppDomain();
            IPluginRunContext obj       = GetContext(appDomain);
            bool exited = obj.ClosePlugin(isClosingForm);

            if (!exited)
            {
                return(false);
            }
            ContextList.Remove(ConfigItem.Url);
            return(true);
        }
コード例 #6
0
        public static IPlugin GetPlugin(IPluginContext parentProgram, string url)
        {
            if (!configs.ContainsKey(parentProgram))
            {
                //ShellUtils.ShowWarn("Please call LoadPlugin at first.");
                return(null);
            }

            IPluginRunContext theRunContext = GetPluginConfigItem(parentProgram, url).PluginRunContext;

            if (theRunContext == null)
            {
                return(null);
            }
            return(theRunContext.GetPlugin(url));
        }