Example #1
0
 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);
 }