public override void Do() { foreach (var folder in FoldersToOpen) { if (!FileSystemCommand.DirectoryExists(folder)) { DidCommandSucceed = false; SendReport($"Windows Explorer cannot open directory {folder} because it doesn't exist", ReportType.DoneTaskWithFailure); return; } if (CommandLineArguments.Any()) { CommandLineArguments[0] = $"/open, {folder}"; } else { CommandLineArguments.Add($"/open, {folder}"); } runCommand(); SendReport($"Windows Explorer exited with code {ExitCode} for directory {folder}", ReportType.Progress); } DidCommandSucceed = true; SendReport($"Windows Explorer opened all requested folders successfully", ReportType.DoneTaskWithSuccess); }