The Forum is up for sale: XeNTaX Forum looking for new owner
X360 .arc won't extract.
-
Gh0stBlade
- Moderator
- Posts: 719
- Joined: Mon Jul 05, 2010 8:55 pm
- Has thanked: 20 times
- Been thanked: 492 times
X360 .arc won't extract.
The contents of this post was deleted because of possible forum rules violation.
Last edited by Gh0stBlade on Thu Jul 08, 2010 6:52 pm, edited 1 time in total.
Click the thanks button if I helped!
-
KIWIDOGGIE
- n00b
- Posts: 14
- Joined: Mon Jul 27, 2009 6:33 pm
- Been thanked: 4 times
Re: X360 .arc won't extract.
What game is it from exactly?
Either way here...
Source and Download
Either way here...
Source and Download
Code: Select all
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.IO;
using EndianIO;
namespace ArcExtractor
{
public partial class Form1 : Form
{
struct Header
{
public int Head; // CRA
public short numFiles;
public short unknown;
public string fileName;
public List<Entry> Entries;
}
struct Entry
{
public int Unknown;
public int FileSize;
public int Unknown1;
public int FileOffset;
public string FileName;
}
Header hd;
EndianReader br;
public Form1()
{
InitializeComponent();
}
private void btnOpen_Click(object sender, EventArgs e)
{
OpenFileDialog ofd = new OpenFileDialog();
ofd.Filter = "Xbox 360 ARC|*.arc";
if (ofd.ShowDialog() == DialogResult.OK)
{
hd = new Header();
hd.Entries = new List<Entry>();
br = new EndianReader(new FileStream(ofd.FileName, FileMode.Open, FileAccess.Read), EndianType.BigEndian);
hd.Head = br.ReadInt32();
lblisValid.Text = (hd.Head == 4411969) ? "Is Valid File: Yes" : "Is Valid File: No";
if (hd.Head == 4411969)
{
hd.numFiles = br.ReadInt16();
hd.unknown = br.ReadInt16();
hd.fileName = br.ReadAsciiString(64);
lblFileName.Text = "FileName?:" + hd.fileName;
lblNumEntries.Text = "Number of Entries: " + hd.numFiles.ToString();
for (int i = 0; i < hd.numFiles; i++)
{
Entry tmp = new Entry();
tmp.Unknown = br.ReadInt32();
tmp.FileSize = br.ReadInt32();
tmp.Unknown1 = br.ReadInt32();
tmp.FileOffset = br.ReadInt32();
tmp.FileName = br.ReadAsciiString(64);
hd.Entries.Add(tmp);
ListViewItem lvi = new ListViewItem();
lvi.Text = tmp.FileName;
lvi.SubItems.Add(tmp.FileSize.ToString());
lstItems.Items.Add(lvi);
}
}
}
}
private void btnExtract_Click(object sender, EventArgs e)
{
SaveFileDialog sfd = new SaveFileDialog();
sfd.FileName = lstItems.SelectedItems[0].Text;
if (sfd.ShowDialog() == DialogResult.OK)
{
int Index = lstItems.SelectedItems[0].Index;
BinaryWriter bw = new BinaryWriter(new FileStream(sfd.FileName, FileMode.Create, FileAccess.Write));
br.BaseStream.Position = hd.Entries[Index].FileOffset;
bw.Write(br.ReadBytes(hd.Entries[Index].FileSize));
bw.Close();
MessageBox.Show("Done!");
}
}
}
}
You do not have the required permissions to view the files attached to this post.
-
Gh0stBlade
- Moderator
- Posts: 719
- Joined: Mon Jul 05, 2010 8:55 pm
- Has thanked: 20 times
- Been thanked: 492 times
Re: X360 .arc won't extract.
It's incorrectly extracting the files. It also forgets some files. in other .arcs
Click the thanks button if I helped!
-
Gh0stBlade
- Moderator
- Posts: 719
- Joined: Mon Jul 05, 2010 8:55 pm
- Has thanked: 20 times
- Been thanked: 492 times
-
Gh0stBlade
- Moderator
- Posts: 719
- Joined: Mon Jul 05, 2010 8:55 pm
- Has thanked: 20 times
- Been thanked: 492 times
Re: X360 .arc won't extract.
All that programme does is chop the .arc into sections and put it into files its supposed to decompress not do that...
Click the thanks button if I helped!
-
Gh0stBlade
- Moderator
- Posts: 719
- Joined: Mon Jul 05, 2010 8:55 pm
- Has thanked: 20 times
- Been thanked: 492 times
-
Gh0stBlade
- Moderator
- Posts: 719
- Joined: Mon Jul 05, 2010 8:55 pm
- Has thanked: 20 times
- Been thanked: 492 times
-
Gh0stBlade
- Moderator
- Posts: 719
- Joined: Mon Jul 05, 2010 8:55 pm
- Has thanked: 20 times
- Been thanked: 492 times
-
Gh0stBlade
- Moderator
- Posts: 719
- Joined: Mon Jul 05, 2010 8:55 pm
- Has thanked: 20 times
- Been thanked: 492 times
-
Gh0stBlade
- Moderator
- Posts: 719
- Joined: Mon Jul 05, 2010 8:55 pm
- Has thanked: 20 times
- Been thanked: 492 times
-
Gh0stBlade
- Moderator
- Posts: 719
- Joined: Mon Jul 05, 2010 8:55 pm
- Has thanked: 20 times
- Been thanked: 492 times
-
Gh0stBlade
- Moderator
- Posts: 719
- Joined: Mon Jul 05, 2010 8:55 pm
- Has thanked: 20 times
- Been thanked: 492 times
-
chrrox
- Moderator
- Posts: 2602
- Joined: Sun May 18, 2008 3:01 pm
- Has thanked: 57 times
- Been thanked: 1411 times
-
Gh0stBlade
- Moderator
- Posts: 719
- Joined: Mon Jul 05, 2010 8:55 pm
- Has thanked: 20 times
- Been thanked: 492 times
