private void _Execute(string projectName, string nameAs) { Trash.Clean(); Log.Write(LogLevel.Verbose, "START: svuotato cestino"); if (!Directory.Exists(config.DestPath)) { Directory.CreateDirectory(config.DestPath); } fileManager.ClearFolders(config.ClearFolders); Log.Write(LogLevel.Verbose, "START: pulite cartelle"); //!ridondante //ProcessManager.CloseWindow(nameAs); CopyProject(projectName, nameAs); Log.Write(LogLevel.Verbose, "START: copiato progetto"); var pathExe = CopyExecutable(); fileManager.CreateLink(Global.LinkToExecutable, pathExe, string.Join(" ", Environment.GetCommandLineArgs())); Log.Write(LogLevel.Verbose, "START: copiato eseguibile e creato link"); config.SaveForCompleteAssignment(nameAs, Path.GetDirectoryName(pathExe)); Log.Write(LogLevel.Verbose, "START: scritto file di configurazione"); ExecuteOpen(); Global.Sleep(); if (config.ProjectTarget.TargetType == TargetType.Folder) { string path = Path.Combine(config.DestPath, nameAs); ProcessManager.Start(path); } else { ProcessManager.Start(config.DestPath); } Log.Write(LogLevel.Verbose, "START: aperta cartella progetto"); }
private void _Execute() { CopyOnShared(); //TODO: cancellazione del progetto (utile se si presuppone che progetto esista fuori da cartelle clear) Trash.Clean(); //!NOTE: solleva eccezione con Vs2017 peché non riesce a cancellare cartella .vs //TODO: bypassare l'eliminazione della cartella ".VS" // (lasciando che sia la sessione start dell'utente successivo a eliminarla) fileManager.ClearFolders(config.ClearFolders); //!NOTE: soluzione al problema della cartella ".vs": silenziare l'eccezione! try { fileManager.ClearFolders(config.ClearFolders); } catch { } }