public void Launch()
        {
            if (_console != null)
            {
                _console.Activate();
                return;
            }

            PSConfig.AddVariable("MEFHelper", _mefHelper);
            PSConfig.AddVariable("AlbumRepository", _albumRepository);
            PSConfig.AddVariable("MainWindow", Application.Current.MainWindow);

            PSConfig.Profile  = "BeaverMusicProfile.ps1";
            _console          = new PSConsole();
            _console.Closing += (s, e) => _console = null;

            _console.Show();
        }
Example #2
0
        static void ExecuteTask(string taskPath)
        {
            var di    = new DirectoryInfo(taskPath);
            var files = di.GetFiles("*.ps1").OrderBy(f => f.Name);

            Write.Label("TargetPath: ", rpkg.TargetPath);
            Write.Label("OriginPath: ", rpkg.OriginPath);
            PSConfig.AddVariable("TargetSQLServer", rpkg.TargetSQLServer);
            PSConfig.AddVariable("TargetPath", rpkg.TargetPath);
            PSConfig.AddVariable("OriginPath", rpkg.OriginPath);
            PSConfig.AddVariable("AppName", app.Nombre);
            PSConfig.AddVariable("AppVersion", app.Version);
            foreach (var file in files)
            {
                Write.Label("Ejecutando: ", file.FullName);
                var script = File.ReadAllText(file.FullName);
                //script = script.Replace("{rpkg.OriginPath}",rpkg.OriginPath);
                Console.WriteLine(PS.ExecutePS(script));
            }
        }