private static bool LoadStatics(PluginInformation pi, PluginAssembly pa, bool fForce) { Plugin plugin = pa.Load(pi.PluginID); if ((plugin != null) && (plugin.Instance != null)) { dicStaticPluginInstances[pi.PluginID] = plugin; if ((plgEncodingDetector == null) || fForce) { QTPlugin.IEncodingDetector instance = plugin.Instance as QTPlugin.IEncodingDetector; if (instance != null) { try { instance.Open(null, null); plgEncodingDetector = instance; return(true); } catch (Exception exception) { HandlePluginException(exception, IntPtr.Zero, pi.Name, "Loading static plugin."); } } } } return(false); }
private static void LoadStaticInstance(PluginInformation pi, PluginAssembly pa) { Plugin plugin; if (!dicStaticPluginInstances.TryGetValue(pi.PluginID, out plugin)) { plugin = pa.Load(pi.PluginID); if (plugin == null || plugin.Instance == null) { return; } dicStaticPluginInstances[pi.PluginID] = plugin; if (plugin.PluginInformation.PluginType == PluginType.Static) { try { plugin.Instance.Open(null, null); } catch (Exception exception) { HandlePluginException(exception, IntPtr.Zero, pi.Name, "Loading static plugin."); return; } } } if (plgEncodingDetector == null) { plgEncodingDetector = plugin.Instance as IEncodingDetector; } }
public Plugin Load(PluginInformation pi, PluginAssembly pa) { try { if ((pa == null) && !dicPluginAssemblies.TryGetValue(pi.Path, out pa)) { return(null); } Plugin plugin = pa.Load(pi.PluginID); if (plugin != null) { string[] strArray; int[] numArray; this.dicPluginInstances[pi.PluginID] = plugin; if ((!this.pluginServer.OpenPlugin(plugin.Instance, out strArray) || (strArray == null)) || (strArray.Length <= 0)) { return(plugin); } pi.ShortcutKeyActions = strArray; if (QTUtility.dicPluginShortcutKeys.TryGetValue(pi.PluginID, out numArray)) { if (numArray == null) { QTUtility.dicPluginShortcutKeys[pi.PluginID] = new int[strArray.Length]; return(plugin); } if (numArray.Length != strArray.Length) { int[] numArray2 = new int[strArray.Length]; int num = Math.Min(numArray.Length, strArray.Length); for (int i = 0; i < num; i++) { numArray2[i] = numArray[i]; } QTUtility.dicPluginShortcutKeys[pi.PluginID] = numArray2; } return(plugin); } QTUtility.dicPluginShortcutKeys[pi.PluginID] = new int[strArray.Length]; } return(plugin); } catch (Exception exception) { HandlePluginException(exception, IntPtr.Zero, pi.Name, "Loading plugin."); QTUtility2.MakeErrorLog(exception, null); } return(null); }
public Plugin Load(PluginInformation pi, PluginAssembly pa) { try { if (pa == null && !PluginManager.GetAssembly(pi.Path, out pa)) { return(null); } Plugin plugin = pa.Load(pi.PluginID); if (plugin == null) { return(null); } dicPluginInstances[pi.PluginID] = plugin; plugin.Instance.Open(this, shellBrowser); return(plugin); } catch (Exception exception) { PluginManager.HandlePluginException(exception, IntPtr.Zero, pi.Name, "Loading plugin."); QTUtility2.MakeErrorLog(exception); } return(null); }
public Plugin Load(PluginInformation pi, PluginAssembly pa) { try { if(pa == null && !PluginManager.GetAssembly(pi.Path, out pa)) { return null; } Plugin plugin = pa.Load(pi.PluginID); if(plugin == null) return null; dicPluginInstances[pi.PluginID] = plugin; plugin.Instance.Open(this, shellBrowser); return plugin; } catch(Exception exception) { PluginManager.HandlePluginException(exception, IntPtr.Zero, pi.Name, "Loading plugin."); QTUtility2.MakeErrorLog(exception); } return null; }
private static void LoadStaticInstance(PluginInformation pi, PluginAssembly pa) { Plugin plugin; if(!dicStaticPluginInstances.TryGetValue(pi.PluginID, out plugin)) { plugin = pa.Load(pi.PluginID); if(plugin == null || plugin.Instance == null) return; dicStaticPluginInstances[pi.PluginID] = plugin; if(plugin.PluginInformation.PluginType == PluginType.Static) { try { plugin.Instance.Open(null, null); } catch(Exception exception) { HandlePluginException(exception, IntPtr.Zero, pi.Name, "Loading static plugin."); return; } } } if(plgEncodingDetector == null) { plgEncodingDetector = plugin.Instance as IEncodingDetector; } }