コード例 #1
0
ファイル: Program.cs プロジェクト: zjloscar/Dynamo
        /// <summary>
        /// Generate new addin files for all applicable
        /// versions of Revit.
        /// </summary>
        /// <param name="products">A collection of revit installs.</param>
        /// <param name="dynamos">DynamoProducts, a collection of installed Dynamo
        /// on this system.</param>
        /// <param name="dynamoUninstallPath">Path of Dynamo being uninstalled</param>
        internal static void GenerateAddins(IRevitProductCollection products, DynamoProducts dynamos, string dynamoUninstallPath = "")
        {
            foreach (var prod in products.Products)
            {
                Console.WriteLine("Generating addins in {0}", prod.AddinsFolder);

                var addinData = DynamoAddinData.Create(prod, dynamos, dynamoUninstallPath);
                if (null != addinData)
                {
                    GenerateDynamoAddin(addinData);
                }
            }
        }
コード例 #2
0
ファイル: Program.cs プロジェクト: vic-kailiu/Dynamo
        /// <summary>
        /// Generate new addin files for all applicable
        /// versions of Revit.
        /// </summary>
        /// <param name="products">A collection of revit installs.</param>
        /// <param name="dynamos">A collection of dynamo installs.</param>
        internal static void GenerateAddins(IRevitProductCollection products, IDynamoInstallCollection dynamos)
        {
            foreach (var prod in products.Products)
            {
                Console.WriteLine("Generating addins in {0}", prod.AddinsFolder);

                var addinData = new DynamoAddinData(prod, dynamos.GetLatest());

                if (prod.ProductName == "Vasari Beta 3")
                {
                    // Change the addin path because the AddinUtility
                    // reports this incorrectly for vasari
                    var dir    = Path.GetDirectoryName(addinData.AddinPath);
                    var newDir = dir.Replace("Revit", "Vasari");
                    addinData.AddinPath = Path.Combine(newDir, Path.GetFileName(addinData.AddinPath));
                }

                GenerateDynamoAddin(addinData);
            }
        }
コード例 #3
0
        /// <summary>
        /// Deletes all existing Dynamo addins.
        /// This method will delete addins like Dynamo.addin and
        /// DynamoVersionSelector.addin
        /// </summary>
        /// <param name="products">A collection of revit installs.</param>
        internal static void DeleteExistingAddins(IRevitProductCollection products)
        {
            Console.WriteLine("Deleting all exisitng addins...");
            foreach (var product in products.Products)
            {
                try
                {
                    Console.WriteLine("Checking addins in {0}", product.AddinsFolder);

                    var dynamoAddin = Path.Combine(product.AddinsFolder, "Dynamo.addin");
                    if (File.Exists(dynamoAddin))
                    {
                        Console.WriteLine("Deleting addin {0}", dynamoAddin);
                        File.Delete(dynamoAddin);
                    }

                    dynamoAddin = Path.Combine(product.AddinsFolder, "DynamoRevitVersionSelector.addin");
                    if (File.Exists(dynamoAddin))
                    {
                        Console.WriteLine("Deleting addin {0}", dynamoAddin);
                        File.Delete(dynamoAddin);
                    }

                    dynamoAddin = Path.Combine(product.AddinsFolder, "DynamoVersionSelector.addin");
                    if (File.Exists(dynamoAddin))
                    {
                        Console.WriteLine("Deleting addin {0}", dynamoAddin);
                        File.Delete(dynamoAddin);
                    }
                }
                catch (Exception ex)
                {
                    Console.WriteLine("There as an error deleting an addin {0}", product.AddinsFolder);
                    Console.WriteLine(ex.Message);
                    Console.WriteLine(ex.StackTrace);
                }
            }
        }
コード例 #4
0
ファイル: Program.cs プロジェクト: JeffreyMcGrew/Dynamo
        /// <summary>
        /// Deletes all existing Dynamo addins.
        /// This method will delete addins like Dynamo.addin and 
        /// DynamoVersionSelector.addin
        /// </summary>
        internal static void DeleteExistingAddins(IRevitProductCollection products)
        {
            foreach (var product in products.Products)
            {
                try
                {
                    Console.WriteLine("Deleting addins in {0}", product.AddinsFolder);

                    var dynamoAddin = Path.Combine(product.AddinsFolder, "Dynamo.addin");
                    if (File.Exists(dynamoAddin))
                    {
                        Console.WriteLine("Deleting addin {0}", dynamoAddin);
                        File.Delete(dynamoAddin);
                    }

                    dynamoAddin = Path.Combine(product.AddinsFolder, "DynamoRevitVersionSelector.addin");
                    if (File.Exists(dynamoAddin))
                    {
                        Console.WriteLine("Deleting addin {0}", dynamoAddin);
                        File.Delete(dynamoAddin);
                    }

                    dynamoAddin = Path.Combine(product.AddinsFolder, "DynamoVersionSelector.addin");
                    if (File.Exists(dynamoAddin))
                    {
                        Console.WriteLine("Deleting addin {0}", dynamoAddin);
                        File.Delete(dynamoAddin);
                    }
                }
                catch (Exception ex)
                {
                    Console.WriteLine("There as an error deleting an addin {0}", product.AddinsFolder);
                    Console.WriteLine(ex.Message);
                    Console.WriteLine(ex.StackTrace);
                }
            }
        }
コード例 #5
0
ファイル: Program.cs プロジェクト: JeffreyMcGrew/Dynamo
        /// <summary>
        /// Generate new addin files for all applicable
        /// versions of Revit.
        /// </summary>
        /// <param name="products">A collection of revit installs.</param>
        /// <param name="dynamos">A collection of dynamo installs.</param>
        internal static void GenerateAddins(IRevitProductCollection products, IDynamoInstallCollection dynamos)
        {
            foreach (var prod in products.Products)
            {
                Console.WriteLine("Generating addins in {0}", prod.AddinsFolder);

                var addinData = new DynamoAddinData(prod, dynamos.GetLatest());

                if (prod.ProductName == "Vasari Beta 3")
                {
                    // Change the addin path because the AddinUtility 
                    // reports this incorrectly for vasari
                    var dir = Path.GetDirectoryName(addinData.AddinPath);
                    var newDir = dir.Replace("Revit", "Vasari");
                    addinData.AddinPath = Path.Combine(newDir, Path.GetFileName(addinData.AddinPath));
                }

                GenerateDynamoAddin(addinData);
            }
        }
コード例 #6
0
ファイル: Program.cs プロジェクト: ankushraizada/Dynamo
        /// <summary>
        /// Generate new addin files for all applicable
        /// versions of Revit.
        /// </summary>
        /// <param name="products">A collection of revit installs.</param>
        /// <param name="dynamos">DynamoProducts, a collection of installed Dynamo
        /// on this system.</param>
        /// <param name="dynamoUninstallPath">Path of Dynamo being uninstalled</param>
        internal static void GenerateAddins(IRevitProductCollection products, DynamoProducts dynamos, string dynamoUninstallPath = "")
        {
            foreach (var prod in products.Products)
            {
                Console.WriteLine("Generating addins in {0}", prod.AddinsFolder);

                var addinData = DynamoAddinData.Create(prod, dynamos, dynamoUninstallPath);
                if(null != addinData)
                    GenerateDynamoAddin(addinData);
            }
        }