Hello There, Guest! Register

Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Is there a Script to Backup Cartridges?
#7
So far my built-in function to my custom app is working fine. Here is the code in C# that I made to do this.

Code:
private void btn_dumpCart(object sender, EventArgs e)
        {
            bool found = false;
            string cartFolder = "";
            string filePath = "";

            string[] dirList = my_dftp.dir_list("/LF/Cart");
            foreach (string s in dirList)
            {
                string[] tmp = s.Split(' ');
                filePath = tmp[tmp.Length - 1].Trim();

                if (filePath != "./" && filePath != "../" && filePath != "lib/" && !string.IsNullOrEmpty(filePath) && filePath.Length < 30)
                {
                    if (cartFolder == "")
                    {
                        found = true;
                        cartFolder = filePath.Replace("/", "");
                    }
                    else
                    {
                        found = false;
                    }
                }
            }
            if (found)
            {
                string metaP = "";
                string metaN = "";
                string meta = System.Text.Encoding.ASCII.GetString(my_dftp.cat("/LF/Cart/" + cartFolder + "/meta.inf"));
                string[] metainf = meta.Split('\n');
                foreach (string s in metainf)
                {
                    if (s.StartsWith("PackageID=\""))
                    {
                        metaP = s.Replace("PackageID=", "");
                        metaP = metaP.Replace("\"", "");
                    }
                    if (s.StartsWith("Name=\""))
                    {
                        metaN = s.Replace("Name=", "");
                        metaN = metaN.Replace("\"", "");
                    }
                }
                if (!string.IsNullOrEmpty(metaP) && !string.IsNullOrEmpty(metaN))
                {
                    UpdateLog("Found cart:" + metaN);
                    UpdateLog("Dumping cart...");
                    my_dftp.run_buffer("#!/bin/sh\nrm -rf /LF/Bulk/ProgramFiles/mytempdir\n");
                    Thread.Sleep(500);
                    my_dftp.mkdir(@"/LF/Bulk/ProgramFiles/mytempdir");
                    Thread.Sleep(500);

                    my_dftp.run_buffer("#!/bin/sh\ncp -r /LF/Cart/"+cartFolder+"/* /LF/Bulk/ProgramFiles/mytempdir\n");
                    Thread.Sleep(500);

                    string runstring = string.Format("#!/bin/sh\nmv /LF/Bulk/ProgramFiles/mytempdir /LF/Bulk/ProgramFiles/{0}\n", metaP);
                    my_dftp.run_buffer(runstring);

                    UpdateLog("Dumped cart to device");
                }
                else
                {
                    UpdateLog("Could not parse cart info");
                }
            }
            else
            {
                UpdateLog("Could not find cart");
            }
        }
Reply


Messages In This Thread
RE: Is there a Script to Backup Cartridges? - by Deak Phreak - 05-01-2014, 10:07 AM

Forum Jump: