public bool Expand(string toe_path)
        {
            if (!File.Exists(toe_path))
            {
                Console.WriteLine("No such file : " + toe_path);
                return(false);
            }

            MyConsole.StatusWrite("\nExecuted", true);
            Console.WriteLine("\"{0}\" \"{1}\"", Path.GetFileName(expander_path), Path.GetFileName(toe_path));

            Process p = Process.Start("\"" + expander_path + "\"", "\"" + toe_path + "\"");

            p.WaitForExit();

            MyConsole.StatusWriteLine("Successfully detected.", true);

            return(true);
        }
        public ToeExpander()
        {
            expander_path = SearchDefaultInstalledDirectory();

            // null check
            if (expander_path == null)
            {
                MyConsole.ColoredWriteLine("\nCouldn't find TouchDesigner in default installation folder.", ConsoleColor.Yellow);
                expander_path = AnotherFolderPrompt();

                if (expander_path == null)
                {
                    MyConsole.StatusWriteLine("TouchDesigner is not found.", false);
                    Console.WriteLine("Press any key to close application.");
                    Console.ReadLine();
                    Environment.Exit(0);
                }
            }
        }
        private string  AnotherFolderPrompt()
        {
            Console.Write("Input your installation directory (TouchDesignerXXX): ");

            string td_path = Console.ReadLine();

            if (td_path == "")
            {
                return(null);
            }

            string tmp_expander_path = SearchInstalledDirectory(td_path);

            if (tmp_expander_path == null)
            {
                MyConsole.StatusWriteLine("\nWrong path", false);
                return(AnotherFolderPrompt());
            }
            else
            {
                return(tmp_expander_path);
            }
        }