Exemple #1
0
 private void iExtractAll_ItemClick(object sender, ItemClickEventArgs e)
 {
     if (filelistview.Items.Count > 0)
     {
         List <fileSystemObject> objectList = new List <fileSystemObject>();
         using (var frm = new OpenFolderDialog())
         {
             if (frm.ShowDialog(this) == DialogResult.OK)
             {
                 try
                 {
                     using (Cursors.WaitCursor)
                     {
                         objectList.Add(archiveFile.RootDirectory);
                         if (objectList.Count > 0)
                         {
                             form_extract extract_form = new form_extract(objectList, frm.Folder);
                             extract_form.ShowDialog();
                             extract_form.Dispose();
                         }
                         else
                         {
                             MessageBox.Show("Failed to find root Dir", "Extract Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                         }
                     }
                 }
                 catch
                 {
                     MessageBox.Show("Failed to extract files", "Extract Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                 }
             }
         }
     }
 }
Exemple #2
0
        private void btn_extract_Click(object sender, EventArgs e)
        {
            if (filelistview.SelectedObjects.Count < 1)
                return;

            List<fileSystemObject> objectList = new List<fileSystemObject>();
            if (filelistview.SelectedObjects.Count == 1)
            {
                // Handle single Dir
                if (filelistview.SelectedObject is RPFLib.Common.Directory)
                {
                    using (var sfrm = new OpenFolderDialog())
                    {
                        if (sfrm.ShowDialog(this) == DialogResult.OK)
                        {
                            try
                            {
                                using (Cursors.WaitCursor)
                                {
                                    objectList.Add(filelistview.SelectedObject as fileSystemObject);
                                    form_extract extract_form = new form_extract(objectList, Path.GetFullPath(sfrm.Folder));
                                    extract_form.ShowDialog();
                                    extract_form.Dispose();
                                }
                            }
                            catch
                            {
                                MessageBox.Show("Failed to extract files", "Extract Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                            }
                        }
                    }
                }
                else
                {
                    // Handle single file
                    using (var sfrm = new SaveFileDialog())
                    {
                        var file = filelistview.SelectedObject as RPFLib.Common.File;
                        sfrm.FileName = file.Name;
                        if (sfrm.ShowDialog(this) == DialogResult.OK)
                        {
                            byte[] data = file.GetData(false);
                            System.IO.File.WriteAllBytes(sfrm.FileName, data);
                        }
                    }
                }
            }
            //Handle multiple files/folders
            else if (filelistview.SelectedObjects.Count > 1)
            {
                using (var frm = new OpenFolderDialog())
                {
                    if (frm.ShowDialog(this) == DialogResult.OK)
                    {
                        try
                        {
                            using (Cursors.WaitCursor)
                            {
                                foreach (object item in filelistview.SelectedObjects)
                                {
                                    objectList.Add(item as fileSystemObject);
                                }
                                form_extract extract_form = new form_extract(objectList, frm.Folder);
                                extract_form.ShowDialog();
                                extract_form.Dispose();
                            }
                        }
                        catch
                        {
                            MessageBox.Show("Failed to extract files", "Extract Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                    }
                }
            }
            else
                return;
        }
Exemple #3
0
        private void iExtractAll_ItemClick(object sender, ItemClickEventArgs e)
        {
            if (filelistview.Items.Count > 0)
            {
                List<fileSystemObject> objectList = new List<fileSystemObject>();
                using (var frm = new OpenFolderDialog())
                {
                    if (frm.ShowDialog(this) == DialogResult.OK)
                    {
                        try
                        {
                            using (Cursors.WaitCursor)
                            {
                                objectList.Add(archiveFile.RootDirectory);
                                if (objectList.Count > 0)
                                {
                                    form_extract extract_form = new form_extract(objectList, frm.Folder);
                                    extract_form.ShowDialog();
                                    extract_form.Dispose();
                                }
                                else
                                    MessageBox.Show("Failed to find root Dir", "Extract Error", MessageBoxButtons.OK, MessageBoxIcon.Error);

                            }
                        }
                        catch
                        {
                            MessageBox.Show("Failed to extract files", "Extract Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                    }
                }
            }
        }
Exemple #4
0
        private void btn_extract_Click(object sender, EventArgs e)
        {
            if (filelistview.SelectedObjects.Count < 1)
            {
                return;
            }

            List <fileSystemObject> objectList = new List <fileSystemObject>();

            if (filelistview.SelectedObjects.Count == 1)
            {
                // Handle single Dir
                if (filelistview.SelectedObject is RPFLib.Common.Directory)
                {
                    using (var sfrm = new OpenFolderDialog())
                    {
                        if (sfrm.ShowDialog(this) == DialogResult.OK)
                        {
                            try
                            {
                                using (Cursors.WaitCursor)
                                {
                                    objectList.Add(filelistview.SelectedObject as fileSystemObject);
                                    form_extract extract_form = new form_extract(objectList, Path.GetFullPath(sfrm.Folder));
                                    extract_form.ShowDialog();
                                    extract_form.Dispose();
                                }
                            }
                            catch
                            {
                                MessageBox.Show("Failed to extract files", "Extract Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                            }
                        }
                    }
                }
                else
                {
                    // Handle single file
                    using (var sfrm = new SaveFileDialog())
                    {
                        var file = filelistview.SelectedObject as RPFLib.Common.File;
                        sfrm.FileName = file.Name;
                        if (sfrm.ShowDialog(this) == DialogResult.OK)
                        {
                            byte[] data = file.GetData(false);
                            System.IO.File.WriteAllBytes(sfrm.FileName, data);
                        }
                    }
                }
            }
            //Handle multiple files/folders
            else if (filelistview.SelectedObjects.Count > 1)
            {
                using (var frm = new OpenFolderDialog())
                {
                    if (frm.ShowDialog(this) == DialogResult.OK)
                    {
                        try
                        {
                            using (Cursors.WaitCursor)
                            {
                                foreach (object item in filelistview.SelectedObjects)
                                {
                                    objectList.Add(item as fileSystemObject);
                                }
                                form_extract extract_form = new form_extract(objectList, frm.Folder);
                                extract_form.ShowDialog();
                                extract_form.Dispose();
                            }
                        }
                        catch
                        {
                            MessageBox.Show("Failed to extract files", "Extract Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                    }
                }
            }
            else
            {
                return;
            }
        }