public static void BuildXBox360Package(string songFileName, DLCPackageData info, IEnumerable<string> xboxFiles, GameVersion gameVersion, DLCPackageType dlcType = DLCPackageType.Song) { LogRecord x = new LogRecord(); RSAParams xboxRSA = info.SignatureType == PackageMagic.CON ? new RSAParams(new DJsIO(Resources.XBox360_KV, true)) : new RSAParams(StrongSigned.LIVE); CreateSTFS xboxSTFS = new CreateSTFS(); xboxSTFS.HeaderData = info.GetSTFSHeader(gameVersion, dlcType); foreach (string file in xboxFiles) xboxSTFS.AddFile(file, Path.GetFileName(file)); STFSPackage xboxPackage = new STFSPackage(xboxSTFS, xboxRSA, songFileName, x); var generated = xboxPackage.RebuildPackage(xboxRSA); if (!generated) throw new InvalidOperationException("Error on create XBox360 package, details: \n" + x.Log); xboxPackage.FlushPackage(xboxRSA); xboxPackage.CloseIO(); DirectoryExtension.SafeDelete(XBOX_WORKDIR); }
public static void BuildXBox360Package(string packagePath, DLCPackageData info, IEnumerable<string> xboxFiles, PackageMagic? xboxPackageType) { LogRecord x = new LogRecord(); RSAParams xboxRSA = xboxPackageType == PackageMagic.CON ? new RSAParams(new DJsIO(Resources.XBox360_KV, true)) : new RSAParams(StrongSigned.LIVE); CreateSTFS xboxSTFS = new CreateSTFS(); xboxSTFS.HeaderData = info.GetSTFSHeader(); foreach (string file in xboxFiles) xboxSTFS.AddFile(file, Path.GetFileName(file)); STFSPackage xboxPackage = new STFSPackage(xboxSTFS, xboxRSA, packagePath, x); var generated = xboxPackage.RebuildPackage(xboxRSA); if (!generated) throw new InvalidOperationException("Error on create XBox360 package, details: \n\r" + x.Log); xboxPackage.FlushPackage(xboxRSA); xboxPackage.CloseIO(); try { if (Directory.Exists(xboxWorkDir)) Directory.Delete(xboxWorkDir, true); } catch { /*Have no problem if don't delete*/ } }