public string CopyFileCommand(CopyCommandInfo c) { try { var srcByte = LoadFileInMemory(c.SourceFile); if (IsFileFromWindowsFileSystem(c.DestinationFile)) { File.WriteAllBytes(c.DestinationFile, srcByte); return(SFS_COMMAND_MESSAGE_ONE_FILE_COPIED); } else { var fi = _sFsManager.AddFile(c.DestinationFile, srcByte); if (fi == null) { Console.WriteLine(SFS_COMMAND_ERR_COPYING_FILE); } else { if (_sFsManager.UpdateFileSystem()) { return(SFS_COMMAND_MESSAGE_ONE_FILE_COPIED); } } } } catch (System.Exception ex) { } finally { _sFsManager.Clean(); } return(SFS_COMMAND_ERR_ZERO_FILE_COPIED); }
static void ShowFile(int fileIndex) { var fi = _sfsManager.FileInfos[fileIndex]; Console.Clear(); ConsoleEx.TitleBar(0, "Loading:" + fi.FileName, ConsoleColor.Yellow, ConsoleColor.DarkBlue); fi = _sfsManager.LoadFileContent(fi); Console.Clear(); ConsoleEx.TitleBar(0, "Viewing:" + fi.FileName, ConsoleColor.Yellow, ConsoleColor.DarkBlue); ConsoleEx.Gotoxy(0, 1); if (fi.IsImage) { int exitCode = -1; var rr = ExecuteProgram.ExecProgram("mspaint.exe", string.Format(@"""{0}""", fi.GetAsLocalTempFile()), true, ref exitCode, true, false); if (rr && exitCode == 0) { } else { ConsoleEx.WriteLine(0, 3, "Cannot open the file", ConsoleColor.Red); Pause(); } } else { var text = fi.GetBufferAsUnicodeString(); Console.WriteLine(text); Pause(); } _sfsManager.Clean(); }