Search code examples
c#processwinrar

how to make rar file of full folder using c#


I have a procedure for making .rar file.

Code

    public static void RarFilesT(string rarPackagePath, Dictionary<int, string> accFiles)
    {
        string[] files = new string[accFiles.Count];
        int i = 0;
        foreach (var fList_item in accFiles)
        {
            files[i] = "\"" + fList_item.Value;
            i++;
        }
        string fileList = string.Join("\" ", files);
        fileList += "\"";
        System.Diagnostics.ProcessStartInfo sdp = new System.Diagnostics.ProcessStartInfo();
        string cmdArgs = string.Format("A {0} {1} -ep",
            String.Format("\"{0}\"", rarPackagePath),
            fileList);
        sdp.ErrorDialog = true;
        sdp.UseShellExecute = true;
        sdp.Arguments = cmdArgs;
        sdp.FileName = rarPath;//Winrar.exe path
        sdp.CreateNoWindow = false;
        sdp.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
        System.Diagnostics.Process process = System.Diagnostics.Process.Start(sdp);
        process.WaitForExit();
    }

This producer needs an string array of file list for making rar file. Can any one tell me how can i make rar of a complete folder with sub folders and files. Sorry 1 mistake and i also need selected extension files from given folder.


Solution

  • -r argument can recursive folder and files..

    so you add "-r" to

     string cmdArgs = string.Format("A {0} {1} -ep -r",
            String.Format("\"{0}\"", rarPackagePath),
            fileList);