public override PluginReturns Run(PluginArgument arg)
        {
            if (arg.Rows == null || arg.Rows.Length < 2)
            {
                SimpleMessage.ShowInfo("Please select two or more assemblies to merge.");
                return(PluginReturns.None);
            }

            bool resolveDirAdded = false;

            try
            {
                resolveDirAdded = arg.Host.AddAssemblyResolveDir(arg.SourceDir);
                frmILMerge frm = new frmILMerge(arg.Host, arg.Rows, arg.SourceDir);
                frm.ShowDialog();
            }
            catch
            {
                throw;
            }
            finally
            {
                if (resolveDirAdded)
                {
                    arg.Host.RemoveAssemblyResolveDir(arg.SourceDir);
                }
            }

            return(PluginReturns.Refresh);
        }
        public override PluginReturns Run(PluginArgument arg)
        {
            if (arg.Rows == null || arg.Rows.Length < 2)
            {
                SimpleMessage.ShowInfo("Please select two or more assemblies to merge.");
                return PluginReturns.None;
            }

            bool resolveDirAdded = false;
            try
            {
                resolveDirAdded = arg.Host.AddAssemblyResolveDir(arg.SourceDir);
                frmILMerge frm = new frmILMerge(arg.Host, arg.Rows, arg.SourceDir);
                frm.ShowDialog();
            }
            catch
            {
                throw;
            }
            finally
            {
                if(resolveDirAdded)
                    arg.Host.RemoveAssemblyResolveDir(arg.SourceDir);
            }

            return PluginReturns.Refresh;
        }