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);
 }
Пример #2
0
        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();
        }