mirror of
https://github.com/stuff-by-3-random-dudes/UWUVCI-AIO-WPF
synced 2024-11-10 05:34:13 +00:00
Merge pull request #42 from stuff-by-3-random-dudes/OverhaulToNet6
Overhaul to net6
This commit is contained in:
commit
8d6264e59d
25 changed files with 14272 additions and 1450 deletions
71
AnalysisReport.sarif
Normal file
71
AnalysisReport.sarif
Normal file
|
@ -0,0 +1,71 @@
|
|||
{
|
||||
"$schema": "https://schemastore.azurewebsites.net/schemas/json/sarif-2.1.0-rtm.5.json",
|
||||
"version": "2.1.0",
|
||||
"runs": [
|
||||
{
|
||||
"tool": {
|
||||
"driver": {
|
||||
"name": "Dependency Analysis",
|
||||
"semanticVersion": "0.4.336902",
|
||||
"informationUri": "https://docs.microsoft.com/en-us/dotnet/core/porting/upgrade-assistant-overview",
|
||||
"rules": [
|
||||
{
|
||||
"id": "UA106",
|
||||
"name": "PackageToBeAdded",
|
||||
"fullDescription": {
|
||||
"text": "Packages that need to be added in order to upgrade the project to chosen TFM"
|
||||
},
|
||||
"helpUri": "https://docs.microsoft.com/en-us/dotnet/core/porting/upgrade-assistant-overview"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"results": [
|
||||
{
|
||||
"ruleId": "UA106",
|
||||
"message": {
|
||||
"text": "Package Microsoft.DotNet.UpgradeAssistant.Extensions.Default.Analyzers, Version=0.4.336902 needs to be added."
|
||||
},
|
||||
"locations": [
|
||||
{
|
||||
"physicalLocation": {
|
||||
"artifactLocation": {
|
||||
"uri": "file:///C:/Users/zesty.fernandez/Documents/GitHub/UWUVCI-AIO-WPF/UWUVCI%20AIO%20WPF/UWUVCI%20AIO%20WPF.csproj"
|
||||
},
|
||||
"region": {}
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"ruleId": "UA106",
|
||||
"message": {
|
||||
"text": "Package Microsoft.Windows.Compatibility, Version=6.0.0 needs to be added."
|
||||
},
|
||||
"locations": [
|
||||
{
|
||||
"physicalLocation": {
|
||||
"artifactLocation": {
|
||||
"uri": "file:///C:/Users/zesty.fernandez/Documents/GitHub/UWUVCI-AIO-WPF/UWUVCI%20AIO%20WPF/UWUVCI%20AIO%20WPF.csproj"
|
||||
},
|
||||
"region": {}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"columnKind": "utf16CodeUnits"
|
||||
},
|
||||
{
|
||||
"tool": {
|
||||
"driver": {
|
||||
"name": "API Upgradability",
|
||||
"semanticVersion": "0.4.336902",
|
||||
"informationUri": "https://docs.microsoft.com/en-us/dotnet/core/porting/upgrade-assistant-overview"
|
||||
}
|
||||
},
|
||||
"results": [],
|
||||
"columnKind": "utf16CodeUnits"
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,9 +1,9 @@
|
|||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio Version 16
|
||||
VisualStudioVersion = 16.0.29806.167
|
||||
# Visual Studio Version 17
|
||||
VisualStudioVersion = 17.2.32630.192
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UWUVCI AIO WPF", "UWUVCI AIO WPF\UWUVCI AIO WPF.csproj", "{6A60AB0E-4597-4ECA-AEFB-D63A26CA7B54}"
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "UWUVCI AIO WPF", "UWUVCI AIO WPF\UWUVCI AIO WPF.csproj", "{6A60AB0E-4597-4ECA-AEFB-D63A26CA7B54}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
|
|
|
@ -3,6 +3,7 @@ using System.Drawing;
|
|||
using System.Drawing.Drawing2D;
|
||||
using System.Drawing.Text;
|
||||
using System.Linq;
|
||||
using System.Text.RegularExpressions;
|
||||
|
||||
namespace UWUVCI_AIO_WPF.Classes
|
||||
{
|
||||
|
@ -127,7 +128,7 @@ namespace UWUVCI_AIO_WPF.Classes
|
|||
//if rectangle isn't able to get set then H4V3 should be used.
|
||||
rectangle = _rectangleH4V3;
|
||||
}
|
||||
|
||||
|
||||
if (TitleScreen != null)
|
||||
g.DrawImage(TitleScreen, rectangle);
|
||||
else
|
||||
|
@ -136,8 +137,16 @@ namespace UWUVCI_AIO_WPF.Classes
|
|||
if (Frame != null)
|
||||
g.DrawImage(Frame, new Rectangle(0, 0, 1280, 720));
|
||||
|
||||
if (NameLine1 != null && NameLine2 != null)
|
||||
var isNotEnglish = false;
|
||||
|
||||
if (!string.IsNullOrEmpty(NameLine1) || !string.IsNullOrEmpty(NameLine2))
|
||||
{
|
||||
var regex= "^[a-zA-Z0-9\\d\\s\\.\\'\\&\\\\(\\)\\-\\:\\;\\.\\,\\?\\^\\¿]*$";
|
||||
var match = Regex.Match(NameLine1, regex);
|
||||
var match2 = Regex.Match(NameLine2, regex);
|
||||
if (!match.Success || !match2.Success)
|
||||
isNotEnglish = true;
|
||||
|
||||
Pen outlineBold = new Pen(Color.FromArgb(222, 222, 222), 5.0F);
|
||||
Pen shadowBold = new Pen(Color.FromArgb(190, 190, 190), 7.0F);
|
||||
Rectangle rectangleNL1 = Longname ? new Rectangle(578, 313, 640, 50) : new Rectangle(578, 340, 640, 50);
|
||||
|
@ -171,10 +180,16 @@ namespace UWUVCI_AIO_WPF.Classes
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
if (Released > 0)
|
||||
{
|
||||
GraphicsPath r = new GraphicsPath();
|
||||
r.AddString("Released: " + Released.ToString(), font.FontFamily,
|
||||
|
||||
var releasedString = "Released: " + Released.ToString();
|
||||
if (isNotEnglish)
|
||||
releasedString = Released.ToString() + "年発売";
|
||||
|
||||
r.AddString(releasedString, font.FontFamily,
|
||||
(int)(FontStyle.Regular),
|
||||
g.DpiY * 25.0F / 72.0F, new Rectangle(586, 450, 600, 40), format);
|
||||
g.DrawPath(shadow, r);
|
||||
|
@ -185,9 +200,15 @@ namespace UWUVCI_AIO_WPF.Classes
|
|||
if (Players > 0)
|
||||
{
|
||||
string pStr = Players >= 4 ? "1-4" : (Players == 1 ? "1" : "1-" + Players.ToString());
|
||||
|
||||
if (isNotEnglish)
|
||||
pStr = "プレイ人数 " + pStr + "人";
|
||||
else
|
||||
pStr = "Players: " + pStr;
|
||||
|
||||
GraphicsPath p = new GraphicsPath();
|
||||
|
||||
p.AddString("Players: " + pStr, font.FontFamily,
|
||||
p.AddString(pStr, font.FontFamily,
|
||||
(int)(FontStyle.Regular),
|
||||
g.DpiY * 25.0F / 72.0F, new Rectangle(586, 496, 600, 40), format);
|
||||
|
||||
|
|
|
@ -17,6 +17,9 @@ using UWUVCI_AIO_WPF.Properties;
|
|||
using UWUVCI_AIO_WPF.UI.Windows;
|
||||
using Newtonsoft.Json;
|
||||
using MessageBox = System.Windows.MessageBox;
|
||||
using WiiUDownloaderLibrary;
|
||||
using System.Threading.Tasks;
|
||||
using WiiUDownloaderLibrary.Models;
|
||||
|
||||
namespace UWUVCI_AIO_WPF
|
||||
{
|
||||
|
@ -533,33 +536,21 @@ namespace UWUVCI_AIO_WPF
|
|||
}
|
||||
|
||||
string gamePath = Path.Combine(baseRomPath, "content", "game.iso");
|
||||
string nfsPath = Path.Combine(baseRomPath, "content", "nfs2iso2nfs.exe");
|
||||
File.Move(Path.Combine(tempPath, "game.iso"), gamePath);
|
||||
File.Copy(Path.Combine(toolsPath, "nfs2iso2nfs.exe"), nfsPath);
|
||||
|
||||
using (Process iso2nfs = new Process())
|
||||
string extra = "";
|
||||
if (mvm.Index == 2)
|
||||
{
|
||||
if (!mvm.debug)
|
||||
{
|
||||
|
||||
iso2nfs.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
|
||||
}
|
||||
iso2nfs.StartInfo.FileName = nfsPath;
|
||||
string extra = "";
|
||||
if (mvm.Index == 2)
|
||||
{
|
||||
extra = "-horizontal ";
|
||||
}
|
||||
if (mvm.Index == 3) { extra = "-wiimote "; }
|
||||
if (mvm.Index == 4) { extra = "-instantcc "; }
|
||||
if (mvm.Index == 5) { extra = "-nocc "; }
|
||||
if (mvm.LR) { extra += "-lrpatch "; }
|
||||
iso2nfs.StartInfo.Arguments = $"-enc -homebrew {extra}-iso " + gamePath;
|
||||
iso2nfs.Start();
|
||||
iso2nfs.WaitForExit();
|
||||
File.Delete(nfsPath);
|
||||
File.Delete(gamePath);
|
||||
extra = "-horizontal ";
|
||||
}
|
||||
if (mvm.Index == 3) { extra = "-wiimote "; }
|
||||
if (mvm.Index == 4) { extra = "-instantcc "; }
|
||||
if (mvm.Index == 5) { extra = "-nocc "; }
|
||||
if (mvm.LR) { extra += "-lrpatch "; }
|
||||
|
||||
nfs2iso2nfs.Depreciated.Main(new string[] { "-enc", "-homebrew", extra, "-iso", gamePath, "-fwimg", Path.Combine(baseRomPath, "code", "fw.img"), "-key", Path.Combine(baseRomPath, "code", "htk.bin"), "-output", Path.Combine(baseRomPath, "content") + Path.DirectorySeparatorChar });
|
||||
|
||||
File.Delete(gamePath);
|
||||
mvm.Progress = 80;
|
||||
|
||||
|
||||
|
@ -632,31 +623,18 @@ namespace UWUVCI_AIO_WPF
|
|||
File.Delete(sFile);
|
||||
}
|
||||
string gamePath = Path.Combine(baseRomPath, "content", "game.iso");
|
||||
string nfsPath = Path.Combine(baseRomPath, "content", "nfs2iso2nfs.exe");
|
||||
File.Move(Path.Combine(tempPath, "game.iso"), gamePath);
|
||||
File.Copy(Path.Combine(toolsPath, "nfs2iso2nfs.exe"), nfsPath);
|
||||
using (Process iso2nfs = new Process())
|
||||
|
||||
string pass = "-passthrough ";
|
||||
if (mvm.passtrough != true)
|
||||
{
|
||||
if (!mvm.debug)
|
||||
{
|
||||
|
||||
iso2nfs.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
|
||||
}
|
||||
iso2nfs.StartInfo.FileName = nfsPath;
|
||||
string pass = "-passthrough ";
|
||||
if (mvm.passtrough != true)
|
||||
{
|
||||
pass = "";
|
||||
}
|
||||
iso2nfs.StartInfo.Arguments = $"-enc -homebrew {pass}-iso " + gamePath;
|
||||
iso2nfs.Start();
|
||||
iso2nfs.WaitForExit();
|
||||
File.Delete(gamePath);
|
||||
File.Delete(nfsPath);
|
||||
pass = "";
|
||||
}
|
||||
nfs2iso2nfs.Depreciated.Main(new string[] { "-enc", "-homebrew", pass, "-iso", gamePath, "-fwimg", Path.Combine(baseRomPath, "code", "fw.img"), "-key", Path.Combine(baseRomPath, "code", "htk.bin"), "-output", Path.Combine(baseRomPath, "content") + Path.DirectorySeparatorChar });
|
||||
|
||||
File.Delete(gamePath);
|
||||
|
||||
mvm.Progress = 80;
|
||||
|
||||
|
||||
}
|
||||
|
||||
private static void WII(string romPath, MainViewModel mvm)
|
||||
|
@ -715,9 +693,10 @@ namespace UWUVCI_AIO_WPF
|
|||
mvm.msg = "Trying to change the Manual...";
|
||||
//READ FIRST 4 BYTES
|
||||
byte[] chars = new byte[4];
|
||||
FileStream fstrm = new FileStream(Path.Combine(tempPath, "pre.iso"), FileMode.Open);
|
||||
fstrm.Read(chars, 0, 4);
|
||||
fstrm.Close();
|
||||
|
||||
using (FileStream fstrm = new FileStream(Path.Combine(tempPath, "pre.iso"), FileMode.Open))
|
||||
fstrm.Read(chars, 0, 4);
|
||||
|
||||
string procod = ByteArrayToString(chars);
|
||||
string neededformanual = procod.ToHex();
|
||||
string metaXml = Path.Combine(baseRomPath, "meta", "meta.xml");
|
||||
|
@ -732,41 +711,30 @@ namespace UWUVCI_AIO_WPF
|
|||
{
|
||||
if (mvm.regionfrii)
|
||||
{
|
||||
byte[] write1;
|
||||
byte[] write2;
|
||||
if (mvm.regionfriius)
|
||||
{
|
||||
using (FileStream fs = new FileStream(Path.Combine(tempPath, "pre.iso"), FileMode.Open))
|
||||
{
|
||||
fs.Seek(0x4E003, SeekOrigin.Begin);
|
||||
fs.Write(new byte[] { 0x01 }, 0, 1);
|
||||
fs.Seek(0x4E010, SeekOrigin.Begin);
|
||||
fs.Write(new byte[] { 0x80, 0x06, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80 }, 0, 16);
|
||||
fs.Close();
|
||||
|
||||
}
|
||||
write1 = new byte[] { 0x01 };
|
||||
write2 = new byte[] { 0x80, 0x06, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80 };
|
||||
}
|
||||
else if (mvm.regionfriijp)
|
||||
{
|
||||
using (FileStream fs = new FileStream(Path.Combine(tempPath, "pre.iso"), FileMode.Open))
|
||||
{
|
||||
fs.Seek(0x4E003, SeekOrigin.Begin);
|
||||
fs.Write(new byte[] { 0x00 }, 0, 1);
|
||||
fs.Seek(0x4E010, SeekOrigin.Begin);
|
||||
fs.Write(new byte[] { 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80 }, 0, 16);
|
||||
fs.Close();
|
||||
|
||||
}
|
||||
write1 = new byte[] { 0x00 };
|
||||
write2 = new byte[] { 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80 };
|
||||
}
|
||||
else
|
||||
{
|
||||
using (FileStream fs = new FileStream(Path.Combine(tempPath, "pre.iso"), FileMode.Open))
|
||||
{
|
||||
fs.Seek(0x4E003, SeekOrigin.Begin);
|
||||
fs.Write(new byte[] { 0x02 }, 0, 1);
|
||||
fs.Seek(0x4E010, SeekOrigin.Begin);
|
||||
fs.Write(new byte[] { 0x80, 0x80, 0x80, 0x00, 0x03, 0x03, 0x04, 0x03, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80 }, 0, 16);
|
||||
fs.Close();
|
||||
write1 = new byte[] { 0x02 };
|
||||
write2 = new byte[] { 0x80, 0x80, 0x80, 0x00, 0x03, 0x03, 0x04, 0x03, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80 };
|
||||
}
|
||||
|
||||
}
|
||||
using (FileStream fs = new FileStream(Path.Combine(tempPath, "pre.iso"), FileMode.Open))
|
||||
{
|
||||
fs.Seek(0x4E003, SeekOrigin.Begin);
|
||||
fs.Write(write1, 0, 1);
|
||||
fs.Seek(0x4E010, SeekOrigin.Begin);
|
||||
fs.Write(write2, 0, 16);
|
||||
}
|
||||
}
|
||||
using (Process trimm = new Process())
|
||||
|
@ -959,7 +927,6 @@ namespace UWUVCI_AIO_WPF
|
|||
|
||||
}
|
||||
|
||||
mvm.Progress = 50;
|
||||
mvm.msg = "Replacing TIK and TMD...";
|
||||
using (Process extract = new Process())
|
||||
{
|
||||
|
@ -980,41 +947,29 @@ namespace UWUVCI_AIO_WPF
|
|||
File.Copy(Path.Combine(tempPath, "TIKTMD", "ticket.bin"), Path.Combine(baseRomPath, "code", "rvlt.tik"));
|
||||
Directory.Delete(Path.Combine(tempPath, "TIKTMD"), true);
|
||||
}
|
||||
mvm.Progress = 60;
|
||||
mvm.msg = "Injecting ROM...";
|
||||
foreach (string sFile in Directory.GetFiles(Path.Combine(baseRomPath, "content"), "*.nfs"))
|
||||
{
|
||||
File.Delete(sFile);
|
||||
}
|
||||
string gamePath = Path.Combine(baseRomPath, "content", "game.iso");
|
||||
string nfsPath = Path.Combine(baseRomPath, "content", "nfs2iso2nfs.exe");
|
||||
File.Move(Path.Combine(tempPath, "game.iso"), gamePath);
|
||||
File.Copy(Path.Combine(toolsPath, "nfs2iso2nfs.exe"), nfsPath);
|
||||
|
||||
using (Process iso2nfs = new Process())
|
||||
string extra = "";
|
||||
if (mvm.Index == 2)
|
||||
{
|
||||
if (!mvm.debug)
|
||||
{
|
||||
|
||||
iso2nfs.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
|
||||
}
|
||||
iso2nfs.StartInfo.FileName = nfsPath;
|
||||
string extra = "";
|
||||
if (mvm.Index == 2)
|
||||
{
|
||||
extra = "-horizontal ";
|
||||
}
|
||||
if (mvm.Index == 3) { extra = "-wiimote "; }
|
||||
if (mvm.Index == 4) { extra = "-instantcc "; }
|
||||
if (mvm.Index == 5) { extra = "-nocc "; }
|
||||
if (mvm.LR) { extra += "-lrpatch "; }
|
||||
iso2nfs.StartInfo.Arguments = $"-enc {extra}-iso " + gamePath;
|
||||
iso2nfs.Start();
|
||||
iso2nfs.WaitForExit();
|
||||
File.Delete(nfsPath);
|
||||
File.Delete(gamePath);
|
||||
extra = "-horizontal ";
|
||||
}
|
||||
if (mvm.Index == 3) { extra = "-wiimote "; }
|
||||
if (mvm.Index == 4) { extra = "-instantcc "; }
|
||||
if (mvm.Index == 5) { extra = "-nocc "; }
|
||||
if (mvm.LR) { extra += "-lrpatch "; }
|
||||
|
||||
nfs2iso2nfs.Depreciated.Main(new string[] { "-enc", "-homebrew", extra, "-iso", gamePath, "-fwimg", Path.Combine(baseRomPath, "code", "fw.img"), "-key", Path.Combine(baseRomPath, "code", "htk.bin"), "-output", Path.Combine(baseRomPath, "content") + Path.DirectorySeparatorChar});
|
||||
|
||||
File.Delete(gamePath);
|
||||
mvm.Progress = 80;
|
||||
|
||||
}
|
||||
private static void GC(string romPath, MainViewModel mvm, bool force)
|
||||
{
|
||||
|
@ -1313,26 +1268,13 @@ namespace UWUVCI_AIO_WPF
|
|||
File.Delete(sFile);
|
||||
}
|
||||
string gamePath = Path.Combine(baseRomPath, "content", "game.iso");
|
||||
string nfsPath = Path.Combine(baseRomPath, "content", "nfs2iso2nfs.exe");
|
||||
File.Move(Path.Combine(tempPath, "game.iso"), gamePath);
|
||||
File.Copy(Path.Combine(toolsPath, "nfs2iso2nfs.exe"), nfsPath);
|
||||
|
||||
using (Process iso2nfs = new Process())
|
||||
{
|
||||
if (!mvm.debug)
|
||||
{
|
||||
nfs2iso2nfs.Depreciated.Main(new string[] { "-enc", "-homebrew", "-passthrough", "-iso", gamePath, "-fwimg", Path.Combine(baseRomPath, "code", "fw.img"), "-key", Path.Combine(baseRomPath, "code", "htk.bin"), "-output", Path.Combine(baseRomPath, "content") + Path.DirectorySeparatorChar });
|
||||
|
||||
File.Delete(gamePath);
|
||||
|
||||
iso2nfs.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
|
||||
}
|
||||
iso2nfs.StartInfo.FileName = nfsPath;
|
||||
iso2nfs.StartInfo.Arguments = $"-enc -homebrew -passthrough -iso " + gamePath;
|
||||
iso2nfs.Start();
|
||||
iso2nfs.WaitForExit();
|
||||
File.Delete(nfsPath);
|
||||
File.Delete(gamePath);
|
||||
}
|
||||
mvm.Progress = 80;
|
||||
|
||||
}
|
||||
private static void WIIold(string romPath, MainViewModel mvm, bool force)
|
||||
{
|
||||
|
@ -1523,7 +1465,7 @@ namespace UWUVCI_AIO_WPF
|
|||
mvvm.msg = "Injecting ROM...";
|
||||
Console.WriteLine("Converting Game to NFS format...");
|
||||
string olddir = Directory.GetCurrentDirectory();
|
||||
tik.StartInfo.FileName = Path.Combine(toolsPath, "nfs2iso2nfs.exe");
|
||||
|
||||
if (!mvm.GC)
|
||||
{
|
||||
string extra = "";
|
||||
|
@ -1537,14 +1479,13 @@ namespace UWUVCI_AIO_WPF
|
|||
if (mvm.LR) { extra += "-lrpatch "; }
|
||||
Console.WriteLine(extra);
|
||||
Console.ReadLine();
|
||||
tik.StartInfo.Arguments = $"-enc {extra}-iso \"{romPath}\"";
|
||||
|
||||
nfs2iso2nfs.Depreciated.Main(new string[] { "-enc", extra, "-iso", romPath, "-fwimg", Path.Combine(baseRomPath, "code", "fw.img"), "-key", Path.Combine(baseRomPath, "code", "htk.bin"), "-output", Path.Combine(baseRomPath, "content") + Path.DirectorySeparatorChar });
|
||||
}
|
||||
else
|
||||
{
|
||||
tik.StartInfo.Arguments = $"-enc -homebrew -passthrough -iso \"{romPath}\"";
|
||||
nfs2iso2nfs.Depreciated.Main(new string[] { "-enc", "-homebrew", "-passthrough", "-iso", romPath, "-fwimg", Path.Combine(baseRomPath, "code", "fw.img"), "-key", Path.Combine(baseRomPath, "code", "htk.bin"), "-output", Path.Combine(baseRomPath, "content") + Path.DirectorySeparatorChar });
|
||||
}
|
||||
tik.Start();
|
||||
tik.WaitForExit();
|
||||
Console.WriteLine("Finished Conversion");
|
||||
mvvm.Progress = 80;
|
||||
}
|
||||
|
@ -1676,35 +1617,25 @@ namespace UWUVCI_AIO_WPF
|
|||
int i = 0;
|
||||
while (Directory.Exists(outputPath))
|
||||
{
|
||||
outputPath = Path.Combine(Properties.Settings.Default.OutPath, $"[WUP]{reg.Replace(gameName, "").Replace("|", " ")}_{i}");
|
||||
outputPath = Path.Combine(Settings.Default.OutPath, $"[WUP]{reg.Replace(gameName, "").Replace("|", " ")}_{i}");
|
||||
mvvm.foldername = $"[WUP]{reg.Replace(gameName, "").Replace("|", " ")}_{i}";
|
||||
i++;
|
||||
}
|
||||
var oldpath = Directory.GetCurrentDirectory();
|
||||
mvm.Progress = 40;
|
||||
mvm.msg = "Packing...";
|
||||
try
|
||||
{
|
||||
Directory.Delete(Environment.GetEnvironmentVariable("LocalAppData") + @"\temp\.net\CNUSPACKER", true);
|
||||
}
|
||||
catch { }
|
||||
using (Process cnuspacker = new Process())
|
||||
|
||||
if (Environment.Is64BitOperatingSystem)
|
||||
CNUSPACKER.Program.Main(new string[] { "-in", baseRomPath, "-out", outputPath, "-encryptKeyWidth", Settings.Default.Ckey });
|
||||
else
|
||||
{
|
||||
using var cnuspacker = new Process();
|
||||
if (!mvm.debug)
|
||||
{
|
||||
cnuspacker.StartInfo.UseShellExecute = false;
|
||||
cnuspacker.StartInfo.CreateNoWindow = true;
|
||||
}
|
||||
if (Environment.Is64BitOperatingSystem)
|
||||
{
|
||||
cnuspacker.StartInfo.FileName = Path.Combine(toolsPath, "CNUSPACKER.exe");
|
||||
cnuspacker.StartInfo.Arguments = $"-in \"{baseRomPath}\" -out \"{outputPath}\" -encryptKeyWith {Properties.Settings.Default.Ckey}";
|
||||
}
|
||||
else
|
||||
{
|
||||
cnuspacker.StartInfo.FileName = "java";
|
||||
cnuspacker.StartInfo.Arguments = $"-jar \"{Path.Combine(toolsPath, "NUSPacker.jar")}\" -in \"{baseRomPath}\" -out \"{outputPath}\" -encryptKeyWith {Properties.Settings.Default.Ckey}";
|
||||
}
|
||||
cnuspacker.StartInfo.FileName = "java";
|
||||
cnuspacker.StartInfo.Arguments = $"-jar \"{Path.Combine(toolsPath, "NUSPacker.jar")}\" -in \"{baseRomPath}\" -out \"{outputPath}\" -encryptKeyWith {Settings.Default.Ckey}";
|
||||
cnuspacker.Start();
|
||||
cnuspacker.WaitForExit();
|
||||
}
|
||||
|
@ -1716,131 +1647,61 @@ namespace UWUVCI_AIO_WPF
|
|||
mvm.msg = "";
|
||||
}
|
||||
|
||||
public static void Download(MainViewModel mvm)
|
||||
|
||||
public static async Task Download(MainViewModel mvm)
|
||||
{
|
||||
|
||||
mvm.InjcttoolCheck();
|
||||
GameBases b = mvm.getBasefromName(mvm.SelectedBaseAsString);
|
||||
|
||||
//GetKeyOfBase
|
||||
TKeys key = mvm.getTkey(b);
|
||||
|
||||
if (Directory.Exists(tempPath)) Directory.Delete(tempPath, true);
|
||||
Directory.CreateDirectory(tempPath);
|
||||
|
||||
var titleData = new TitleData(b.Tid, key.Tkey);
|
||||
var downloadFolder = Path.Combine(tempPath, "download");
|
||||
await Downloader.DownloadAsync(titleData, downloadFolder);
|
||||
|
||||
mvm.Progress = 75;
|
||||
|
||||
CSharpDecrypt.CSharpDecrypt.Decrypt(new string[] { Settings.Default.Ckey, Path.Combine(downloadFolder, b.Tid), Path.Combine(Settings.Default.BasePath, $"{b.Name.Replace(":", "")} [{b.Region}]") });
|
||||
|
||||
if (mvm.GameConfiguration.Console == GameConsoles.WII || mvm.GameConfiguration.Console == GameConsoles.GCN)
|
||||
{
|
||||
using (Process zip = new Process())
|
||||
{
|
||||
mvm.Progress += 10;
|
||||
foreach (string sFile in Directory.GetFiles(Path.Combine(Settings.Default.BasePath, $"{b.Name.Replace(":", "")} [{b.Region}]", "content"), "*.nfs"))
|
||||
File.Delete(sFile);
|
||||
|
||||
if (Directory.Exists(tempPath)) Directory.Delete(tempPath, true);
|
||||
Directory.CreateDirectory(tempPath);
|
||||
using (Process download = new Process())
|
||||
{
|
||||
if (!mvm.debug)
|
||||
{
|
||||
download.StartInfo.UseShellExecute = false;
|
||||
download.StartInfo.CreateNoWindow = true;
|
||||
}
|
||||
|
||||
download.StartInfo.FileName = Path.Combine(toolsPath, "WiiUDownloader.exe");
|
||||
download.StartInfo.Arguments = $"{b.Tid} {key.Tkey} \"{Path.Combine(tempPath, "download")}\"";
|
||||
|
||||
download.Start();
|
||||
download.WaitForExit();
|
||||
}
|
||||
mvm.Progress = 75;
|
||||
|
||||
using (Process decrypt = new Process())
|
||||
{
|
||||
if (!mvm.debug)
|
||||
{
|
||||
decrypt.StartInfo.UseShellExecute = false;
|
||||
decrypt.StartInfo.CreateNoWindow = true;
|
||||
}
|
||||
|
||||
decrypt.StartInfo.FileName = Path.Combine(toolsPath, "Cdecrypt.exe");
|
||||
decrypt.StartInfo.Arguments = $"{Properties.Settings.Default.Ckey} \"{Path.Combine(tempPath, "download")}\" \"{Path.Combine(Properties.Settings.Default.BasePath, $"{b.Name.Replace(":", "")} [{b.Region.ToString()}]")}\"";
|
||||
|
||||
decrypt.Start();
|
||||
decrypt.WaitForExit();
|
||||
}
|
||||
mvm.Progress += 10;
|
||||
foreach (string sFile in Directory.GetFiles(Path.Combine(Properties.Settings.Default.BasePath, $"{b.Name.Replace(":", "")} [{b.Region.ToString()}]", "content"), "*.nfs"))
|
||||
File.Delete(sFile);
|
||||
|
||||
mvm.Progress += 15;
|
||||
}
|
||||
mvm.Progress += 15;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (Directory.Exists(tempPath))
|
||||
Directory.Delete(tempPath, true);
|
||||
|
||||
Directory.CreateDirectory(tempPath);
|
||||
using (Process download = new Process())
|
||||
{
|
||||
if (!mvm.debug)
|
||||
{
|
||||
download.StartInfo.UseShellExecute = false;
|
||||
download.StartInfo.CreateNoWindow = true;
|
||||
}
|
||||
|
||||
download.StartInfo.FileName = Path.Combine(toolsPath, "WiiUDownloader.exe");
|
||||
download.StartInfo.Arguments = $"{b.Tid} {key.Tkey} \"{Path.Combine(tempPath, "download")}\"";
|
||||
|
||||
download.Start();
|
||||
download.WaitForExit();
|
||||
}
|
||||
mvm.Progress = 75;
|
||||
using (Process decrypt = new Process())
|
||||
{
|
||||
if (!mvm.debug)
|
||||
{
|
||||
decrypt.StartInfo.UseShellExecute = false;
|
||||
decrypt.StartInfo.CreateNoWindow = true;
|
||||
}
|
||||
decrypt.StartInfo.FileName = Path.Combine(toolsPath, "Cdecrypt.exe");
|
||||
decrypt.StartInfo.Arguments = $"{Properties.Settings.Default.Ckey} \"{Path.Combine(tempPath, "download")}\" \"{Path.Combine(Properties.Settings.Default.BasePath, $"{b.Name.Replace(":", "")} [{b.Region.ToString()}]")}\"";
|
||||
|
||||
decrypt.Start();
|
||||
decrypt.WaitForExit();
|
||||
}
|
||||
mvm.Progress = 100;
|
||||
}
|
||||
|
||||
|
||||
//GetCurrentSelectedBase
|
||||
|
||||
}
|
||||
public static string ExtractBase(string path, GameConsoles console)
|
||||
{
|
||||
if (!Directory.Exists(Path.Combine(Properties.Settings.Default.BasePath, "CustomBases")))
|
||||
if (!Directory.Exists(Path.Combine(Settings.Default.BasePath, "CustomBases")))
|
||||
{
|
||||
Directory.CreateDirectory(Path.Combine(Properties.Settings.Default.BasePath, "CustomBases"));
|
||||
Directory.CreateDirectory(Path.Combine(Settings.Default.BasePath, "CustomBases"));
|
||||
}
|
||||
string outputPath = Path.Combine(Properties.Settings.Default.BasePath, "CustomBases", $"[{console.ToString()}] Custom");
|
||||
string outputPath = Path.Combine(Settings.Default.BasePath, "CustomBases", $"[{console}] Custom");
|
||||
int i = 0;
|
||||
while (Directory.Exists(outputPath))
|
||||
{
|
||||
outputPath = Path.Combine(Properties.Settings.Default.BasePath, $"[{console.ToString()}] Custom_{i}");
|
||||
outputPath = Path.Combine(Settings.Default.BasePath, $"[{console}] Custom_{i}");
|
||||
i++;
|
||||
}
|
||||
using (Process decrypt = new Process())
|
||||
{
|
||||
|
||||
decrypt.StartInfo.UseShellExecute = false;
|
||||
decrypt.StartInfo.CreateNoWindow = true;
|
||||
decrypt.StartInfo.FileName = Path.Combine(toolsPath, "Cdecrypt.exe");
|
||||
decrypt.StartInfo.Arguments = $"{Properties.Settings.Default.Ckey} \"{path}\" \"{outputPath}";
|
||||
CSharpDecrypt.CSharpDecrypt.Decrypt(new string[] { Settings.Default.Ckey, path, outputPath });
|
||||
|
||||
decrypt.Start();
|
||||
decrypt.WaitForExit();
|
||||
}
|
||||
return outputPath;
|
||||
}
|
||||
// This function changes TitleID, ProductCode and GameName in app.xml (ID) and meta.xml (ID, ProductCode, Name)
|
||||
private static void EditXML(string gameNameOr, int index, string code)
|
||||
{
|
||||
string gameName = string.Empty;
|
||||
if (gameNameOr != null || !String.IsNullOrWhiteSpace(gameNameOr))
|
||||
//This line of code gives me cancer
|
||||
if (gameNameOr != null || !string.IsNullOrWhiteSpace(gameNameOr))
|
||||
{
|
||||
|
||||
gameName = gameNameOr;
|
||||
|
@ -1855,12 +1716,12 @@ namespace UWUVCI_AIO_WPF
|
|||
|
||||
string metaXml = Path.Combine(baseRomPath, "meta", "meta.xml");
|
||||
string appXml = Path.Combine(baseRomPath, "code", "app.xml");
|
||||
Random random = new Random();
|
||||
Random random = new();
|
||||
string ID = $"{random.Next(0x3000, 0x10000):X4}{random.Next(0x3000, 0x10000):X4}";
|
||||
|
||||
string ID2 = $"{random.Next(0x3000, 0x10000):X4}";
|
||||
mvvm.prodcode = ID2;
|
||||
XmlDocument doc = new XmlDocument();
|
||||
XmlDocument doc = new();
|
||||
try
|
||||
{
|
||||
doc.Load(metaXml);
|
||||
|
@ -1919,7 +1780,16 @@ namespace UWUVCI_AIO_WPF
|
|||
|
||||
try
|
||||
{
|
||||
doc.Load(appXml);
|
||||
try
|
||||
{
|
||||
doc.Load(appXml);
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
if (appXml.Contains("<22><><EFBFBD>լ<EFBFBD>}<7D>") || appXml.Contains("???լ?}?"))
|
||||
appXml = appXml[..^7] + ">\r\n</app>";
|
||||
doc.Load(appXml);
|
||||
}
|
||||
doc.SelectSingleNode("app/title_id").InnerText = $"00050002{ID}";
|
||||
//doc.SelectSingleNode("app/title_id").InnerText = $"0005000247414645";
|
||||
|
||||
|
@ -1948,6 +1818,14 @@ namespace UWUVCI_AIO_WPF
|
|||
else
|
||||
{
|
||||
DirectoryCopy(Path.Combine(Properties.Settings.Default.BasePath, baserom), baseRomPath, true);
|
||||
var c2wPath = Path.Combine(Directory.GetCurrentDirectory(), "bin", "temp", "C2W");
|
||||
if (Directory.Exists(c2wPath))
|
||||
try
|
||||
{
|
||||
File.Copy(Path.Combine(c2wPath, "c2w.img"), Path.Combine(baseRomPath, "code", "c2w.img"), true);
|
||||
Directory.Delete(c2wPath, true);
|
||||
}
|
||||
catch { }
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1974,17 +1852,15 @@ namespace UWUVCI_AIO_WPF
|
|||
else
|
||||
{
|
||||
//creating pkg file including the TG16 rom
|
||||
using (Process TurboInject = new Process())
|
||||
{
|
||||
mvvm.msg = "Creating Turbo16 Pkg...";
|
||||
TurboInject.StartInfo.UseShellExecute = false;
|
||||
TurboInject.StartInfo.CreateNoWindow = true;
|
||||
TurboInject.StartInfo.FileName = Path.Combine(toolsPath, "BuildPcePkg.exe");
|
||||
TurboInject.StartInfo.Arguments = $"\"{injectRomPath}\"";
|
||||
TurboInject.Start();
|
||||
TurboInject.WaitForExit();
|
||||
mvvm.Progress = 70;
|
||||
}
|
||||
using Process TurboInject = new Process();
|
||||
mvvm.msg = "Creating Turbo16 Pkg...";
|
||||
TurboInject.StartInfo.UseShellExecute = false;
|
||||
TurboInject.StartInfo.CreateNoWindow = true;
|
||||
TurboInject.StartInfo.FileName = Path.Combine(toolsPath, "BuildPcePkg.exe");
|
||||
TurboInject.StartInfo.Arguments = $"\"{injectRomPath}\"";
|
||||
TurboInject.Start();
|
||||
TurboInject.WaitForExit();
|
||||
mvvm.Progress = 70;
|
||||
}
|
||||
mvvm.msg = "Injecting ROM...";
|
||||
//replacing tg16 rom
|
||||
|
@ -2002,22 +1878,18 @@ namespace UWUVCI_AIO_WPF
|
|||
mvvm.Progress = 20;
|
||||
if (mvvm.pixelperfect)
|
||||
{
|
||||
using (Process retroinject = new Process())
|
||||
{
|
||||
mvvm.msg = "Applying Pixel Perfect Patches...";
|
||||
retroinject.StartInfo.UseShellExecute = false;
|
||||
retroinject.StartInfo.CreateNoWindow = true;
|
||||
retroinject.StartInfo.RedirectStandardOutput = true;
|
||||
retroinject.StartInfo.RedirectStandardError = true;
|
||||
retroinject.StartInfo.FileName = Path.Combine(toolsPath, "ChangeAspectRatio.exe");
|
||||
retroinject.StartInfo.Arguments = $"\"{rpxFile}\"";
|
||||
using Process retroinject = new Process();
|
||||
mvvm.msg = "Applying Pixel Perfect Patches...";
|
||||
retroinject.StartInfo.UseShellExecute = false;
|
||||
retroinject.StartInfo.CreateNoWindow = true;
|
||||
retroinject.StartInfo.RedirectStandardOutput = true;
|
||||
retroinject.StartInfo.RedirectStandardError = true;
|
||||
retroinject.StartInfo.FileName = Path.Combine(toolsPath, "ChangeAspectRatio.exe");
|
||||
retroinject.StartInfo.Arguments = $"\"{rpxFile}\"";
|
||||
|
||||
retroinject.Start();
|
||||
retroinject.WaitForExit();
|
||||
mvvm.Progress = 30;
|
||||
|
||||
|
||||
}
|
||||
retroinject.Start();
|
||||
retroinject.WaitForExit();
|
||||
mvvm.Progress = 30;
|
||||
}
|
||||
using (Process retroinject = new Process())
|
||||
{
|
||||
|
@ -2052,7 +1924,7 @@ namespace UWUVCI_AIO_WPF
|
|||
if (!new FileInfo(injectRomPath).Extension.Contains("gba"))
|
||||
{
|
||||
//it's a GBC or GB rom so it needs to be copied into goomba.gba and then padded to 32Mb (16 would work too but just ot be save)
|
||||
using (Process goomba = new Process())
|
||||
using (Process goomba = new())
|
||||
{
|
||||
mvvm.msg = "Injecting GB/GBC ROM into goomba...";
|
||||
goomba.StartInfo.UseShellExecute = false;
|
||||
|
@ -2088,7 +1960,7 @@ namespace UWUVCI_AIO_WPF
|
|||
}
|
||||
|
||||
|
||||
using (Process psb = new Process())
|
||||
using (Process psb = new())
|
||||
{
|
||||
mvvm.msg = "Injecting ROM...";
|
||||
psb.StartInfo.UseShellExecute = false;
|
||||
|
@ -2250,51 +2122,29 @@ namespace UWUVCI_AIO_WPF
|
|||
if (File.Exists(Path.Combine(toolsPath, "goombamenu.gba"))) File.Delete(Path.Combine(toolsPath, "goombamenu.gba"));
|
||||
}
|
||||
}
|
||||
private static void DownloadSysTitle(MainViewModel mvm)
|
||||
private static async Task DownloadSysTitle(MainViewModel mvm)
|
||||
{
|
||||
if (mvm.SysKeyset() && mvm.SysKey1set())
|
||||
{
|
||||
using (Process download = new Process())
|
||||
{
|
||||
download.StartInfo.FileName = Path.Combine(toolsPath, "WiiUDownloader.exe");
|
||||
download.StartInfo.Arguments = $"0005001010004001 {Properties.Settings.Default.SysKey} \"{Path.Combine(tempPath, "download")}\"";
|
||||
var titleIds = new string[] { "0005001010004001", "0005001010004000" };
|
||||
var paths = new string[] { Path.Combine(Settings.Default.BasePath, $"vwiisys"), Path.Combine(tempPath, "tempd") };
|
||||
var downloadFolder = Path.Combine(tempPath, "download");
|
||||
|
||||
download.Start();
|
||||
download.WaitForExit();
|
||||
}
|
||||
using (Process decrypt = new Process())
|
||||
for (var i = 0; i < titleIds.Length; i++)
|
||||
{
|
||||
decrypt.StartInfo.FileName = Path.Combine(toolsPath, "Cdecrypt.exe");
|
||||
decrypt.StartInfo.Arguments = $"{Properties.Settings.Default.Ckey} \"{Path.Combine(tempPath, "download")}\" \"{Path.Combine(Properties.Settings.Default.BasePath, $"vwiisys")}\"";
|
||||
var titleData = new TitleData(titleIds[i], Settings.Default.SysKey);
|
||||
await Downloader.DownloadAsync(titleData, downloadFolder);
|
||||
CSharpDecrypt.CSharpDecrypt.Decrypt(new string[] { Settings.Default.Ckey, Path.Combine(downloadFolder, titleIds[i]), paths[i] });
|
||||
|
||||
decrypt.Start();
|
||||
decrypt.WaitForExit();
|
||||
}
|
||||
using (Process download = new Process())
|
||||
{
|
||||
Directory.Delete(Path.Combine(tempPath, "download"), true);
|
||||
download.StartInfo.FileName = Path.Combine(toolsPath, "WiiUDownloader.exe");
|
||||
download.StartInfo.Arguments = $"0005001010004000 {Properties.Settings.Default.SysKey1} \"{Path.Combine(tempPath, "download")}\"";
|
||||
|
||||
download.Start();
|
||||
download.WaitForExit();
|
||||
}
|
||||
using (Process decrypt = new Process())
|
||||
{
|
||||
decrypt.StartInfo.FileName = Path.Combine(toolsPath, "Cdecrypt.exe");
|
||||
decrypt.StartInfo.Arguments = $"{Properties.Settings.Default.Ckey} \"{Path.Combine(tempPath, "download")}\" \"{Path.Combine(tempPath, "tempd")}\"";
|
||||
|
||||
decrypt.Start();
|
||||
decrypt.WaitForExit();
|
||||
File.Copy(Path.Combine(tempPath, "tempd", "code", "font.bin"), Path.Combine(Properties.Settings.Default.BasePath, $"vwiisys", "code", "font.bin"));
|
||||
File.Copy(Path.Combine(tempPath, "tempd", "code", "deint.txt"), Path.Combine(Properties.Settings.Default.BasePath, $"vwiisys", "code", "deint.txt"));
|
||||
File.Delete(Path.Combine(Properties.Settings.Default.BasePath, $"vwiisys", "code", "app.xml"));
|
||||
}
|
||||
File.Copy(Path.Combine(tempPath, "tempd", "code", "font.bin"), Path.Combine(Settings.Default.BasePath, $"vwiisys", "code", "font.bin"));
|
||||
File.Copy(Path.Combine(tempPath, "tempd", "code", "deint.txt"), Path.Combine(Settings.Default.BasePath, $"vwiisys", "code", "deint.txt"));
|
||||
File.Delete(Path.Combine(Properties.Settings.Default.BasePath, $"vwiisys", "code", "app.xml"));
|
||||
}
|
||||
}
|
||||
private static void NDS(string injectRomPath)
|
||||
{
|
||||
|
||||
string RomName = string.Empty;
|
||||
mvvm.msg = "Getting BaseRom Name...";
|
||||
var zipLocation = Path.Combine(baseRomPath, "content", "0010", "rom.zip");
|
||||
|
@ -2326,7 +2176,7 @@ namespace UWUVCI_AIO_WPF
|
|||
{
|
||||
string mainRomPath = Directory.GetFiles(Path.Combine(baseRomPath, "content", "rom"))[0];
|
||||
string mainIni = Path.Combine(baseRomPath, "content", "config", $"{Path.GetFileName(mainRomPath)}.ini");
|
||||
using (Process n64convert = new Process())
|
||||
using (Process n64convert = new())
|
||||
{
|
||||
mvvm.msg = "Injecting ROM...";
|
||||
n64convert.StartInfo.UseShellExecute = false;
|
||||
|
@ -2461,16 +2311,12 @@ namespace UWUVCI_AIO_WPF
|
|||
mvvm.msg = "Copying INI...";
|
||||
if (config.INIBin == null)
|
||||
{
|
||||
File.Delete(mainIni);
|
||||
|
||||
if (config.INIPath == null)
|
||||
{
|
||||
File.Delete(mainIni);
|
||||
File.Copy(Path.Combine(toolsPath, "blank.ini"), mainIni);
|
||||
}
|
||||
else
|
||||
{
|
||||
File.Delete(mainIni);
|
||||
File.Copy(config.INIPath, mainIni);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -2501,16 +2347,14 @@ namespace UWUVCI_AIO_WPF
|
|||
|
||||
private static void RPXcomp(string rpxpath)
|
||||
{
|
||||
using (Process rpxtool = new Process())
|
||||
{
|
||||
rpxtool.StartInfo.UseShellExecute = false;
|
||||
rpxtool.StartInfo.CreateNoWindow = true;
|
||||
rpxtool.StartInfo.FileName = Path.Combine(toolsPath, "wiiurpxtool.exe");
|
||||
rpxtool.StartInfo.Arguments = $"-c \"{rpxpath}\"";
|
||||
using Process rpxtool = new Process();
|
||||
rpxtool.StartInfo.UseShellExecute = false;
|
||||
rpxtool.StartInfo.CreateNoWindow = true;
|
||||
rpxtool.StartInfo.FileName = Path.Combine(toolsPath, "wiiurpxtool.exe");
|
||||
rpxtool.StartInfo.Arguments = $"-c \"{rpxpath}\"";
|
||||
|
||||
rpxtool.Start();
|
||||
rpxtool.WaitForExit();
|
||||
}
|
||||
rpxtool.Start();
|
||||
rpxtool.WaitForExit();
|
||||
}
|
||||
|
||||
private static void ReadFileFromBin(byte[] bin, string output)
|
||||
|
@ -2523,8 +2367,6 @@ namespace UWUVCI_AIO_WPF
|
|||
bool readbin = false;
|
||||
try
|
||||
{
|
||||
|
||||
|
||||
//is an image embedded? yes => export them and check for issues
|
||||
//no => using path
|
||||
if (Directory.Exists(imgPath)) // sanity check
|
||||
|
@ -2544,17 +2386,11 @@ namespace UWUVCI_AIO_WPF
|
|||
}
|
||||
else
|
||||
{
|
||||
if (File.Exists(Path.Combine(toolsPath, "iconTex.tga")))
|
||||
{
|
||||
var fileExists = File.Exists(Path.Combine(toolsPath, "iconTex.tga"));
|
||||
if (fileExists)
|
||||
CopyAndConvertImage(Path.Combine(toolsPath, "iconTex.tga"), Path.Combine(imgPath), false, 128, 128, 32, "iconTex.tga");
|
||||
|
||||
Images.Add(true);
|
||||
}
|
||||
else
|
||||
{
|
||||
Images.Add(false);
|
||||
}
|
||||
|
||||
Images.Add(fileExists);
|
||||
}
|
||||
}
|
||||
else
|
||||
|
@ -2574,17 +2410,13 @@ namespace UWUVCI_AIO_WPF
|
|||
}
|
||||
else
|
||||
{
|
||||
if (File.Exists(Path.Combine(toolsPath, "bootTvTex.png")))
|
||||
var fileExists = File.Exists(Path.Combine(toolsPath, "bootTvTex.png"));
|
||||
if (fileExists)
|
||||
{
|
||||
CopyAndConvertImage(Path.Combine(toolsPath, "bootTvTex.png"), Path.Combine(imgPath), false, 1280, 720, 24, "bootTvTex.tga");
|
||||
usetemp = true;
|
||||
Images.Add(true);
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
Images.Add(false);
|
||||
}
|
||||
Images.Add(fileExists);
|
||||
}
|
||||
}
|
||||
else
|
||||
|
@ -2609,60 +2441,55 @@ namespace UWUVCI_AIO_WPF
|
|||
{
|
||||
if (Images[1])
|
||||
{
|
||||
using (Process conv = new Process())
|
||||
using Process conv = new Process();
|
||||
|
||||
if (!mvvm.debug)
|
||||
{
|
||||
conv.StartInfo.UseShellExecute = false;
|
||||
conv.StartInfo.CreateNoWindow = true;
|
||||
}
|
||||
if (usetemp)
|
||||
{
|
||||
File.Copy(Path.Combine(toolsPath, "bootTvTex.png"), Path.Combine(tempPath, "bootDrcTex.png"));
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
if (!mvvm.debug)
|
||||
conv.StartInfo.FileName = Path.Combine(toolsPath, "tga2png.exe");
|
||||
if (!readbin)
|
||||
{
|
||||
conv.StartInfo.UseShellExecute = false;
|
||||
conv.StartInfo.CreateNoWindow = true;
|
||||
}
|
||||
if (usetemp)
|
||||
{
|
||||
File.Copy(Path.Combine(toolsPath, "bootTvTex.png"), Path.Combine(tempPath, "bootDrcTex.png"));
|
||||
conv.StartInfo.Arguments = $"-i \"{config.TGATv.ImgPath}\" -o \"{Path.Combine(tempPath)}\"";
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
conv.StartInfo.FileName = Path.Combine(toolsPath, "tga2png.exe");
|
||||
if (!readbin)
|
||||
if (config.TGATv.extension.Contains("tga"))
|
||||
{
|
||||
conv.StartInfo.Arguments = $"-i \"{config.TGATv.ImgPath}\" -o \"{Path.Combine(tempPath)}\"";
|
||||
ReadFileFromBin(config.TGATv.ImgBin, $"bootTvTex.{config.TGATv.extension}");
|
||||
conv.StartInfo.Arguments = $"-i \"bootTvTex.{config.TGATv.extension}\" -o \"{Path.Combine(tempPath)}\"";
|
||||
}
|
||||
else
|
||||
{
|
||||
if (config.TGATv.extension.Contains("tga"))
|
||||
{
|
||||
ReadFileFromBin(config.TGATv.ImgBin, $"bootTvTex.{config.TGATv.extension}");
|
||||
conv.StartInfo.Arguments = $"-i \"bootTvTex.{config.TGATv.extension}\" -o \"{Path.Combine(tempPath)}\"";
|
||||
}
|
||||
else
|
||||
{
|
||||
ReadFileFromBin(config.TGATv.ImgBin, Path.Combine(tempPath, "bootTvTex.png"));
|
||||
}
|
||||
|
||||
}
|
||||
if (!readbin || config.TGATv.extension.Contains("tga"))
|
||||
{
|
||||
conv.Start();
|
||||
conv.WaitForExit();
|
||||
ReadFileFromBin(config.TGATv.ImgBin, Path.Combine(tempPath, "bootTvTex.png"));
|
||||
}
|
||||
|
||||
File.Copy(Path.Combine(tempPath, "bootTvTex.png"), Path.Combine(tempPath, "bootDrcTex.png"));
|
||||
if (File.Exists(Path.Combine(tempPath, "bootTvTex.png"))) File.Delete(Path.Combine(tempPath, "bootTvTex.png"));
|
||||
if (File.Exists($"bootTvTex.{config.TGATv.extension}")) File.Delete($"bootTvTex.{config.TGATv.extension}");
|
||||
}
|
||||
if (!readbin || config.TGATv.extension.Contains("tga"))
|
||||
{
|
||||
conv.Start();
|
||||
conv.WaitForExit();
|
||||
}
|
||||
|
||||
File.Copy(Path.Combine(tempPath, "bootTvTex.png"), Path.Combine(tempPath, "bootDrcTex.png"));
|
||||
|
||||
CopyAndConvertImage(Path.Combine(tempPath, "bootDrcTex.png"), Path.Combine(imgPath), false, 854, 480, 24, "bootDrcTex.tga");
|
||||
Images.Add(true);
|
||||
if (File.Exists(Path.Combine(tempPath, "bootTvTex.png")))
|
||||
File.Delete(Path.Combine(tempPath, "bootTvTex.png"));
|
||||
|
||||
if (File.Exists($"bootTvTex.{config.TGATv.extension}"))
|
||||
File.Delete($"bootTvTex.{config.TGATv.extension}");
|
||||
}
|
||||
CopyAndConvertImage(Path.Combine(tempPath, "bootDrcTex.png"), Path.Combine(imgPath), false, 854, 480, 24, "bootDrcTex.tga");
|
||||
}
|
||||
else
|
||||
{
|
||||
Images.Add(false);
|
||||
}
|
||||
|
||||
Images.Add(Images[1]);
|
||||
}
|
||||
}
|
||||
else
|
||||
|
@ -2677,30 +2504,26 @@ namespace UWUVCI_AIO_WPF
|
|||
|
||||
|
||||
//logo
|
||||
var addBool = true;
|
||||
if (config.TGALog.ImgBin == null)
|
||||
{
|
||||
//use path
|
||||
if (config.TGALog.ImgPath != null)
|
||||
{
|
||||
Images.Add(true);
|
||||
CopyAndConvertImage(config.TGALog.ImgPath, Path.Combine(imgPath), false, 170, 42, 32, "bootLogoTex.tga");
|
||||
}
|
||||
else
|
||||
{
|
||||
Images.Add(false);
|
||||
}
|
||||
addBool = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
ReadFileFromBin(config.TGALog.ImgBin, $"bootLogoTex.{config.TGALog.extension}");
|
||||
CopyAndConvertImage($"bootLogoTex.{config.TGALog.extension}", Path.Combine(imgPath), true, 170, 42, 32, "bootLogoTex.tga");
|
||||
Images.Add(true);
|
||||
}
|
||||
Images.Add(addBool);
|
||||
|
||||
//Fixing Images + Injecting them
|
||||
if (Images[0] || Images[1] || Images[2] || Images[3])
|
||||
{
|
||||
using (Process checkIfIssue = new Process())
|
||||
using (Process checkIfIssue = new())
|
||||
{
|
||||
checkIfIssue.StartInfo.UseShellExecute = false;
|
||||
checkIfIssue.StartInfo.CreateNoWindow = false;
|
||||
|
@ -2782,18 +2605,13 @@ namespace UWUVCI_AIO_WPF
|
|||
png2tga.StartInfo.UseShellExecute = false;
|
||||
png2tga.StartInfo.CreateNoWindow = true;
|
||||
var extension = new FileInfo(inputPath).Extension;
|
||||
|
||||
if (extension.Contains("png"))
|
||||
{
|
||||
png2tga.StartInfo.FileName = Path.Combine(toolsPath, "png2tga.exe");
|
||||
}
|
||||
else if (extension.Contains("jpg") || extension.Contains("jpeg"))
|
||||
{
|
||||
png2tga.StartInfo.FileName = Path.Combine(toolsPath, "jpg2tga.exe");
|
||||
}
|
||||
else if (extension.Contains("bmp"))
|
||||
{
|
||||
png2tga.StartInfo.FileName = Path.Combine(toolsPath, "bmp2tga.exe");
|
||||
}
|
||||
|
||||
png2tga.StartInfo.Arguments = $"-i \"{inputPath}\" -o \"{outputPath}\" --width={widht} --height={height} --tga-bpp={bit} --tga-compression=none";
|
||||
|
||||
|
@ -2826,10 +2644,8 @@ namespace UWUVCI_AIO_WPF
|
|||
return filePath;
|
||||
|
||||
string newFilePath = Path.Combine(tempPath, Path.GetFileName(filePath));
|
||||
using (FileStream outStream = new FileStream(newFilePath, FileMode.OpenOrCreate))
|
||||
{
|
||||
using (FileStream outStream = new(newFilePath, FileMode.OpenOrCreate))
|
||||
inStream.CopyTo(outStream);
|
||||
}
|
||||
|
||||
return newFilePath;
|
||||
}
|
||||
|
|
|
@ -33,7 +33,7 @@ namespace UWUVCI_AIO_WPF.Classes
|
|||
public static void ExportFile(List<TKeys> precomp, GameConsoles console)
|
||||
{
|
||||
CheckAndFixFolder("bin\\keys");
|
||||
Stream createConfigStream = new FileStream($@"bin\keys\{console.ToString().ToLower()}.vck", FileMode.Create, FileAccess.Write);
|
||||
Stream createConfigStream = new FileStream(Path.Combine(Directory.GetCurrentDirectory(), $@"bin\keys\{console.ToString().ToLower()}.vck"), FileMode.Create, FileAccess.Write);
|
||||
GZipStream compressedStream = new GZipStream(createConfigStream, CompressionMode.Compress);
|
||||
IFormatter formatter = new BinaryFormatter();
|
||||
formatter.Serialize(compressedStream, precomp);
|
||||
|
|
|
@ -1,9 +1,8 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Diagnostics;
|
||||
using System.IO;
|
||||
using System.IO.Compression;
|
||||
using System.Net;
|
||||
using System.Net.Http;
|
||||
using System.Security.Cryptography;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
|
@ -13,17 +12,14 @@ namespace UWUVCI_AIO_WPF.Classes
|
|||
class ToolCheck
|
||||
{
|
||||
static string FolderName = new FileInfo(System.Reflection.Assembly.GetEntryAssembly().Location).DirectoryName + "\\bin\\Tools";
|
||||
public static string backupulr = @"https://github.com/Hotbrawl20/UWUVCI-Tools/raw/master/";
|
||||
public static string backupulr = @"https://github.com/Hotbrawl20/UWUVCI-Tools/raw/master/" + (Environment.Is64BitProcess ? "x64/" : "");
|
||||
public static string[] ToolNames =
|
||||
{
|
||||
"CDecrypt.exe",
|
||||
"CNUSPACKER.exe",
|
||||
"N64Converter.exe",
|
||||
"png2tga.exe",
|
||||
"psb.exe",
|
||||
"RetroInject.exe",
|
||||
"tga_verify.exe",
|
||||
"WiiUDownloader.exe",
|
||||
"wiiurpxtool.exe",
|
||||
"INICreator.exe",
|
||||
"blank.ini",
|
||||
|
@ -31,11 +27,9 @@ namespace UWUVCI_AIO_WPF.Classes
|
|||
"BuildPcePkg.exe",
|
||||
"BuildTurboCdPcePkg.exe",
|
||||
"goomba.gba",
|
||||
"nfs2iso2nfs.exe",
|
||||
"nintendont.dol",
|
||||
"nintendont_force.dol",
|
||||
"GetExtTypePatcher.exe",
|
||||
//"wbfs_file.exe",
|
||||
"wit.exe",
|
||||
"cygwin1.dll",
|
||||
"cygz.dll",
|
||||
|
@ -70,48 +64,30 @@ namespace UWUVCI_AIO_WPF.Classes
|
|||
|
||||
public static async Task<bool> IsToolRightAsync(string name)
|
||||
{
|
||||
bool ret = false;
|
||||
string md5Name = FolderName + "\\" + name + ".md5";
|
||||
using (WebClient client = new WebClient())
|
||||
string md5Name = name + ".md5";
|
||||
string md5Path = FolderName + "\\" + md5Name;
|
||||
|
||||
using (var httpClient = new HttpClient())
|
||||
{
|
||||
await client.DownloadFileTaskAsync(backupulr + md5Name, md5Name);
|
||||
using (StreamReader sr = new StreamReader(md5Name))
|
||||
{
|
||||
var md5 = sr.ReadLine();
|
||||
if (CalculateMD5(name) == md5)
|
||||
{
|
||||
ret = true;
|
||||
}
|
||||
}
|
||||
using var response = await httpClient.GetStreamAsync(backupulr + md5Name);
|
||||
using var fs = new FileStream(md5Path, FileMode.Create);
|
||||
await response.CopyToAsync(fs);
|
||||
}
|
||||
//Dumb solution but whatever, hopefully this deletes the md5file
|
||||
try
|
||||
{
|
||||
File.Delete(md5Name);
|
||||
}
|
||||
catch { }
|
||||
try
|
||||
{
|
||||
File.Delete(new FileInfo(System.Reflection.Assembly.GetEntryAssembly().Location).DirectoryName + "\\bin\\Tools\\" + md5Name);
|
||||
}
|
||||
catch { }
|
||||
try
|
||||
{
|
||||
File.Delete(new FileInfo(System.Reflection.Assembly.GetEntryAssembly().Location).DirectoryName + "\\bin\\bases\\" + md5Name);
|
||||
}
|
||||
catch { }
|
||||
return ret;
|
||||
|
||||
var md5 = "";
|
||||
using (var sr = new StreamReader(md5Path))
|
||||
md5 = await sr.ReadToEndAsync();
|
||||
|
||||
return CalculateMD5(md5Path) == md5;
|
||||
}
|
||||
static string CalculateMD5(string filename)
|
||||
{
|
||||
using (var md5 = MD5.Create())
|
||||
{
|
||||
using (var stream = File.OpenRead(filename))
|
||||
{
|
||||
string ret = BitConverter.ToString(md5.ComputeHash(stream)).Replace("-", "").ToLower();
|
||||
return ret;
|
||||
}
|
||||
}
|
||||
var ret = "";
|
||||
using var md5 = MD5.Create();
|
||||
using (var stream = File.OpenRead(filename))
|
||||
ret = BitConverter.ToString(md5.ComputeHash(stream)).Replace("-", "").ToLower();
|
||||
|
||||
return ret;
|
||||
}
|
||||
public static List<MissingTool> CheckForMissingTools()
|
||||
{
|
||||
|
|
|
@ -17,6 +17,16 @@
|
|||
<xs:documentation>A list of assembly names to include from the default action of "embed all Copy Local references", delimited with line breaks.</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:element>
|
||||
<xs:element minOccurs="0" maxOccurs="1" name="ExcludeRuntimeAssemblies" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>A list of runtime assembly names to exclude from the default action of "embed all Copy Local references", delimited with line breaks</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:element>
|
||||
<xs:element minOccurs="0" maxOccurs="1" name="IncludeRuntimeAssemblies" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>A list of runtime assembly names to include from the default action of "embed all Copy Local references", delimited with line breaks.</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:element>
|
||||
<xs:element minOccurs="0" maxOccurs="1" name="Unmanaged32Assemblies" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>A list of unmanaged 32 bit assembly names to include, delimited with line breaks.</xs:documentation>
|
||||
|
@ -43,6 +53,16 @@
|
|||
<xs:documentation>Controls if .pdbs for reference assemblies are also embedded.</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="IncludeRuntimeReferences" type="xs:boolean">
|
||||
<xs:annotation>
|
||||
<xs:documentation>Controls if runtime assemblies are also embedded.</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="UseRuntimeReferencePaths" type="xs:boolean">
|
||||
<xs:annotation>
|
||||
<xs:documentation>Controls whether the runtime assemblies are embedded with their full path or only with their assembly name.</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="DisableCompression" type="xs:boolean">
|
||||
<xs:annotation>
|
||||
<xs:documentation>Embedded assemblies are compressed by default, and uncompressed when they are loaded. You can turn compression off with this option.</xs:documentation>
|
||||
|
@ -73,6 +93,16 @@
|
|||
<xs:documentation>A list of assembly names to include from the default action of "embed all Copy Local references", delimited with |.</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="ExcludeRuntimeAssemblies" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>A list of runtime assembly names to exclude from the default action of "embed all Copy Local references", delimited with |</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="IncludeRuntimeAssemblies" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>A list of runtime assembly names to include from the default action of "embed all Copy Local references", delimited with |.</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="Unmanaged32Assemblies" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>A list of unmanaged 32 bit assembly names to include, delimited with |.</xs:documentation>
|
||||
|
|
BIN
UWUVCI AIO WPF/GameBaseClassLibrary.dll
Normal file
BIN
UWUVCI AIO WPF/GameBaseClassLibrary.dll
Normal file
Binary file not shown.
File diff suppressed because it is too large
Load diff
|
@ -51,5 +51,5 @@ using System.Windows;
|
|||
// Sie können alle Werte angeben oder Standardwerte für die Build- und Revisionsnummern verwenden,
|
||||
// indem Sie "*" wie unten gezeigt eingeben:
|
||||
// [assembly: AssemblyVersion("1.0.*")]
|
||||
[assembly: AssemblyVersion("3.0.3.0")]
|
||||
[assembly: AssemblyFileVersion("3.0.3.0")]
|
||||
[assembly: AssemblyVersion("3.99.0.0")]
|
||||
[assembly: AssemblyFileVersion("3.99.0.0")]
|
||||
|
|
10
UWUVCI AIO WPF/Properties/Settings.Designer.cs
generated
10
UWUVCI AIO WPF/Properties/Settings.Designer.cs
generated
|
@ -1,10 +1,10 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// Dieser Code wurde von einem Tool generiert.
|
||||
// Laufzeitversion:4.0.30319.42000
|
||||
// This code was generated by a tool.
|
||||
// Runtime Version:4.0.30319.42000
|
||||
//
|
||||
// Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
|
||||
// der Code erneut generiert wird.
|
||||
// Changes to this file may cause incorrect behavior and will be lost if
|
||||
// the code is regenerated.
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
|
@ -12,7 +12,7 @@ namespace UWUVCI_AIO_WPF.Properties {
|
|||
|
||||
|
||||
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "16.10.0.0")]
|
||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.2.0.0")]
|
||||
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
|
||||
|
||||
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
|
||||
|
|
|
@ -91,26 +91,17 @@ namespace UWUVCI_AIO_WPF.UI.Frames.InjectFrames.Bases
|
|||
if (info[0])
|
||||
{
|
||||
mvm.BaseDownloaded = true;
|
||||
if (mvm.RomSet) mvm.CanInject = true;
|
||||
if (mvm.RomSet)
|
||||
mvm.CanInject = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
mvm.BaseDownloaded = false;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
private void btnDwnlnd_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
|
||||
mvm.Download();
|
||||
Thread.Sleep(500);
|
||||
checkStuff(mvm.getInfoOfBase(Base));
|
||||
|
||||
|
||||
|
||||
mvm.Download();
|
||||
checkStuff(mvm.getInfoOfBase(Base));
|
||||
}
|
||||
|
||||
private void btnDwnlnd_Copy_Click(object sender, RoutedEventArgs e)
|
||||
|
|
|
@ -54,5 +54,7 @@
|
|||
<RadioButton x:Name="RF_tn" Content="To NTSC" Click="RF_tp_Click" HorizontalAlignment="Left" VerticalAlignment="Top" GroupName="RF" Width="85" ToolTip="Change Game Region to NTSC" Margin="0,6,0,0"/>
|
||||
<RadioButton x:Name="RF_tj" Content="To JPN" Click="RF_tp_Click" HorizontalAlignment="Left" VerticalAlignment="Top" GroupName="RF" Width="82" ToolTip="Change Game Region to JPN" Margin="0,6,0,0"/>
|
||||
</StackPanel>
|
||||
<TextBox materialDesign:HintAssist.Hint="WIIU ANCAST KEY" Style="{StaticResource MaterialDesignFloatingHintTextBox}" Margin="10,460,395,5" Background="{x:Null}" Foreground="Black" SelectionBrush="#FF00C3D7" CaretBrush="#FF21C3F3" FontSize="18" Text="{Binding ancastKey}" x:Name="ancastKey" MaxLength="250" IsTabStop="False"/>
|
||||
<Button Content="Get From OTP" HorizontalAlignment="Left" Margin="257,473,0,0" VerticalAlignment="Top" Width="127" Click="ancast_OTP" Focusable="False" IsTabStop="False"/>
|
||||
</Grid>
|
||||
</Page>
|
||||
|
|
|
@ -2,21 +2,17 @@
|
|||
using System.Collections.Generic;
|
||||
using System.Diagnostics;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Security.Cryptography;
|
||||
using System.Text;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows;
|
||||
using System.Windows.Controls;
|
||||
using System.Windows.Data;
|
||||
using System.Windows.Documents;
|
||||
using System.Windows.Input;
|
||||
using System.Windows.Media;
|
||||
using System.Windows.Media.Imaging;
|
||||
using System.Windows.Navigation;
|
||||
using System.Windows.Shapes;
|
||||
using System.Windows.Shell;
|
||||
using UWUVCI_AIO_WPF.Properties;
|
||||
using UWUVCI_AIO_WPF.UI.Windows;
|
||||
using WiiUDownloaderLibrary;
|
||||
|
||||
namespace UWUVCI_AIO_WPF.UI.Frames.InjectFrames.Configurations
|
||||
{
|
||||
|
@ -146,8 +142,9 @@ namespace UWUVCI_AIO_WPF.UI.Frames.InjectFrames.Configurations
|
|||
reader.Close();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
isok = true;
|
||||
|
||||
if (isok)
|
||||
{
|
||||
motepass.IsEnabled = false;
|
||||
|
@ -262,6 +259,30 @@ namespace UWUVCI_AIO_WPF.UI.Frames.InjectFrames.Configurations
|
|||
|
||||
}
|
||||
|
||||
public string ReadAncastFromOtp()
|
||||
{
|
||||
var ret = "";
|
||||
using (var dialog = new System.Windows.Forms.OpenFileDialog())
|
||||
{
|
||||
dialog.Filter = "OTP.bin | otp.bin";
|
||||
var res = dialog.ShowDialog();
|
||||
if (res == System.Windows.Forms.DialogResult.OK)
|
||||
{
|
||||
var filepath = dialog.FileName;
|
||||
var test = new byte[16];
|
||||
|
||||
using (var fs = new FileStream(filepath, FileMode.Open, FileAccess.Read))
|
||||
{
|
||||
fs.Seek(0x90, SeekOrigin.Begin);
|
||||
fs.Read(test, 0, 16);
|
||||
}
|
||||
foreach (var b in test)
|
||||
ret += string.Format("{0:X2}", b);
|
||||
}
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
private void InjectGame(object sender, RoutedEventArgs e)
|
||||
{
|
||||
if (File.Exists(tv.Text))
|
||||
|
@ -307,6 +328,107 @@ namespace UWUVCI_AIO_WPF.UI.Frames.InjectFrames.Configurations
|
|||
mvm.LR = false;
|
||||
}
|
||||
mvm.GameConfiguration.GameName = gn.Text;
|
||||
|
||||
if (!string.IsNullOrEmpty(ancastKey.Text))
|
||||
{
|
||||
ancastKey.Text = ancastKey.Text.ToUpper();
|
||||
|
||||
var toolsPath = System.IO.Path.Combine(Directory.GetCurrentDirectory(), "bin", "Tools");
|
||||
var tempPath = System.IO.Path.Combine(Directory.GetCurrentDirectory(), "bin", "temp");
|
||||
var downloadPath = System.IO.Path.Combine(tempPath, "download");
|
||||
var c2wPath = System.IO.Path.Combine(tempPath, "C2W");
|
||||
var imgFileCode = System.IO.Path.Combine(c2wPath, "code", "c2w.img");
|
||||
var imgFile = System.IO.Path.Combine(c2wPath, "c2w.img");
|
||||
var c2wFile = System.IO.Path.Combine(c2wPath, "c2w_patcher.exe");
|
||||
|
||||
var sourceData = ancastKey.Text;
|
||||
var tempSource = Encoding.ASCII.GetBytes(sourceData);
|
||||
var tmpHash = MD5.Create().ComputeHash(tempSource);
|
||||
var hash = BitConverter.ToString(tmpHash);
|
||||
|
||||
if (hash == "31-8D-1F-9D-98-FB-08-E7-7C-7F-E1-77-AA-49-05-43")
|
||||
{
|
||||
string[] ancastKeyCopy = { ancastKey.Text };
|
||||
|
||||
Task.Run(() =>
|
||||
{
|
||||
mvm.Progress += 5;
|
||||
|
||||
Directory.CreateDirectory(tempPath + "\\C2W");
|
||||
|
||||
var titleIds = new List<string>()
|
||||
{
|
||||
"0005001010004000",
|
||||
"0005001010004001"
|
||||
};
|
||||
|
||||
foreach (var titleId in titleIds)
|
||||
{
|
||||
Task.Run(() => Downloader.DownloadAsync(titleId, downloadPath)).GetAwaiter().GetResult();
|
||||
mvm.Progress += 5;
|
||||
}
|
||||
|
||||
foreach (var titleId in titleIds)
|
||||
{
|
||||
CSharpDecrypt.CSharpDecrypt.Decrypt(new string[] { Settings.Default.Ckey, System.IO.Path.Combine(downloadPath, titleId), c2wPath });
|
||||
mvm.Progress += 5;
|
||||
}
|
||||
|
||||
File.WriteAllLines(c2wPath + "\\starbuck_key.txt", ancastKeyCopy);
|
||||
|
||||
File.Copy(System.IO.Path.Combine(toolsPath, "c2w_patcher.exe"), c2wFile, true);
|
||||
|
||||
File.Copy(imgFileCode, imgFile, true);
|
||||
|
||||
mvm.Progress += 5;
|
||||
|
||||
var currentDir = Directory.GetCurrentDirectory();
|
||||
Directory.SetCurrentDirectory(c2wPath);
|
||||
using (Process c2w = new Process())
|
||||
{
|
||||
c2w.StartInfo.FileName = "c2w_patcher.exe";
|
||||
c2w.StartInfo.Arguments = $"-nc";
|
||||
c2w.Start();
|
||||
c2w.WaitForExit();
|
||||
}
|
||||
Directory.SetCurrentDirectory(currentDir);
|
||||
|
||||
File.Copy(System.IO.Path.Combine(c2wPath, "c2p.img"), imgFileCode, true);
|
||||
mvm.Progress = 100;
|
||||
}).GetAwaiter();
|
||||
}
|
||||
else
|
||||
{
|
||||
var cm = new Custom_Message("C2W Error", "Ancast code is incorrect.\nNot continuing with inject.");
|
||||
cm.ShowDialog();
|
||||
return;
|
||||
}
|
||||
|
||||
var message = new DownloadWait("Setting Up C2W - Please Wait", "", mvm);
|
||||
try
|
||||
{
|
||||
message.changeOwner(mvm.mw);
|
||||
}
|
||||
catch (Exception) { }
|
||||
message.ShowDialog();
|
||||
mvm.Progress = 0;
|
||||
File.Delete(imgFileCode);
|
||||
try
|
||||
{
|
||||
Directory.Delete(downloadPath, true);
|
||||
}
|
||||
catch { }
|
||||
File.Delete(c2wFile);
|
||||
File.Delete(c2wPath + "\\starbuck_key.txt");
|
||||
File.Delete(System.IO.Path.Combine(c2wPath, "c2p.img"));
|
||||
File.Delete(imgFileCode);
|
||||
try
|
||||
{
|
||||
Directory.Delete(System.IO.Path.Combine(c2wPath, "code"),true);
|
||||
}
|
||||
catch { }
|
||||
}
|
||||
|
||||
mvm.Inject(false);
|
||||
}
|
||||
|
||||
|
@ -943,5 +1065,10 @@ namespace UWUVCI_AIO_WPF.UI.Frames.InjectFrames.Configurations
|
|||
|
||||
}
|
||||
}
|
||||
|
||||
private void ancast_OTP(object sender, RoutedEventArgs e)
|
||||
{
|
||||
ancastKey.Text = ReadAncastFromOtp();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -46,7 +46,7 @@
|
|||
<Ellipse Fill="#FF2196F3" HorizontalAlignment="Left" Height="21" Margin="12,7,0,0" VerticalAlignment="Top" Width="17"/>
|
||||
<Ellipse Fill="#FF2196F3" HorizontalAlignment="Left" Height="21" Margin="12,7,0,0" VerticalAlignment="Top" Width="17"/>
|
||||
<Border BorderBrush="#FF2196F3" BorderThickness="1" HorizontalAlignment="Left" Height="33" Margin="12,6,0,0" VerticalAlignment="Top" Width="1108" CornerRadius="5" Background="#FF2196F3"/>
|
||||
<Label Content="v3.0.3" HorizontalAlignment="Left" Margin="1075,10,0,0" VerticalAlignment="Top" Foreground="#DDFFFFFF" Width="81" Height="24"/>
|
||||
<Label Content="v3.99.0" HorizontalAlignment="Left" Margin="1075,10,0,0" VerticalAlignment="Top" Foreground="#DDFFFFFF" Width="81" Height="24"/>
|
||||
<Button HorizontalAlignment="Left" Margin="32,522,0,0" VerticalAlignment="Top" Width="74" Click="Button_Click_13" IsTabStop="False" Height="58" ToolTip="Support UWUVCI on Ko-Fi">
|
||||
<Image HorizontalAlignment="Left" Height="46" VerticalAlignment="Top" Width="46" Source="/UI/Images/61e111774d3a2f67c827cd25_Frame 5.png" />
|
||||
</Button>
|
||||
|
|
|
@ -15,6 +15,7 @@ using System.Windows.Media.Imaging;
|
|||
using System.Windows.Navigation;
|
||||
using System.Windows.Shapes;
|
||||
using UWUVCI_AIO_WPF.UI.Windows;
|
||||
using static System.Net.WebRequestMethods;
|
||||
|
||||
|
||||
namespace UWUVCI_AIO_WPF.UI.Frames
|
||||
|
@ -71,7 +72,7 @@ namespace UWUVCI_AIO_WPF.UI.Frames
|
|||
|
||||
private void Button_Click_5(object sender, RoutedEventArgs e)
|
||||
{
|
||||
Custom_Message cm = new Custom_Message("Credits", "UWUVCI AIO - NicoAICP, Morilli, ZestyTS\nBeta Testers/Contributors - wowjinxy, Danis, Adolfobenjaminv\n\nBuildPcePkg & BuildTurboCDPcePkg - JohnnyGo\nCdecrypt - crediar\nCNUSPACKER - NicoAICP, Morilli\nINICreator - NicoAICP\nN64Converter - Morilli\npng2tga - Easy2Convert\ninject_gba_c (psb) - Morilli\nRetroInject_C - Morilli\ntga_verify - Morilli\nWiiUDownloader - Morilli\nwiiurpxtool - 0CHB0\nGoomba - FluBBa\nDarkFilter Removal N64 - MelonSpeedruns, ZestyTS\nNintendont SD Card Menu - TeconMoon\nwit - Wiimm\nGetExtTypePatcher - Fix94\nnfs2iso2nfs - sabykos, piratesephiroth, Fix94 and many more\nWii-VMC - wanikoko\nIcon/TV Bootimages - Flump, ZestyTS\nNKit - Nanook\nImage Creation Base - Phacox\nWiiGameLanguage Patcher - ReturnerS\nChangeAspectRatio - andot\nvWii Title Forwarder - Fix94");
|
||||
Custom_Message cm = new Custom_Message("Credits", "UWUVCI AIO - NicoAICP, Morilli, ZestyTS\nBeta Testers/Contributors - wowjinxy, Danis, Adolfobenjaminv\n\nBuildPcePkg & BuildTurboCDPcePkg - JohnnyGo\nCdecrypt - crediar\nCNUSPACKER - NicoAICP, Morilli\nINICreator - NicoAICP\nN64Converter - Morilli\npng2tga - Easy2Convert\ninject_gba_c (psb) - Morilli\nRetroInject_C - Morilli\ntga_verify - Morilli\nWiiUDownloader - Morilli, ZestyTS\nwiiurpxtool - 0CHB0\nGoomba - FluBBa\nDarkFilter Removal N64 - MelonSpeedruns, ZestyTS\nNintendont SD Card Menu - TeconMoon\nwit - Wiimm\nGetExtTypePatcher - Fix94\nnfs2iso2nfs - sabykos, piratesephiroth, Fix94, ZestyTS, and many more\nWii-VMC - wanikoko\nIcon/TV Bootimages - Flump, ZestyTS\nNKit - Nanook\nImage Creation Base - Phacox\nWiiGameLanguage Patcher - ReturnerS\nChangeAspectRatio - andot\nvWii Title Forwarder - Fix94");
|
||||
try
|
||||
{
|
||||
cm.Owner = (FindResource("mvm") as MainViewModel).mw;
|
||||
|
@ -143,7 +144,12 @@ namespace UWUVCI_AIO_WPF.UI.Frames
|
|||
|
||||
private void Button_Click_13(object sender, RoutedEventArgs e)
|
||||
{
|
||||
Process.Start("https://ko-fi.com/uwuvci");
|
||||
Process.Start(new ProcessStartInfo()
|
||||
{
|
||||
FileName = "https://ko-fi.com/zestyts",
|
||||
UseShellExecute = true,
|
||||
Verb = "open"
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -7,12 +7,16 @@
|
|||
mc:Ignorable="d"
|
||||
d:DesignHeight="480" d:DesignWidth="1130"
|
||||
Title="SettingsFrame" >
|
||||
|
||||
<Grid>
|
||||
<TextBlock x:Name="tb" Margin="10,172,10,192" TextWrapping="Wrap" Text="Welcome to UWUVCI AIO v3.0.3. To start Injecting select a Console to your left." FontSize="20" Height="116" HorizontalAlignment="Center" VerticalAlignment="Center" TextAlignment="Center" Width="1110" />
|
||||
<Button HorizontalAlignment="Right" Margin="15,525,15,0" VerticalAlignment="Top" Width="74" Click="Button_Click" IsTabStop="False" Height="58" ToolTip="Support UWUVCI on Ko-Fi">
|
||||
<TextBlock x:Name="tb" Margin="10,172,10,192" TextWrapping="Wrap" Text="Welcome to UWUVCI AIO v3.99.0. To start Injecting select a Console to your left." FontSize="20" Height="116" HorizontalAlignment="Center" VerticalAlignment="Center" TextAlignment="Center" Width="1110" />
|
||||
<TextBlock Margin="15,505,15,0" HorizontalAlignment="Right" VerticalAlignment="Top" Text="Support MAC Development" TextAlignment="Right"></TextBlock>
|
||||
<Button HorizontalAlignment="Right" Margin="15,525,15,0" VerticalAlignment="Top" Width="74" Click="Button_Click" IsTabStop="False" Height="58" ToolTip="Support UWUVCI MAC Development on Ko-Fi">
|
||||
<Image HorizontalAlignment="Left" Height="46" VerticalAlignment="Top" Width="46" Source="/UI/Images/61e111774d3a2f67c827cd25_Frame 5.png" />
|
||||
</Button>
|
||||
<TextBlock Margin="15,505,15,0" HorizontalAlignment="Left" VerticalAlignment="Top" Text="Support UWUVCI" TextAlignment="Right"></TextBlock>
|
||||
<Button HorizontalAlignment="Left" Margin="15,525,15,0" VerticalAlignment="Top" Width="74" Click="Button_Click2" IsTabStop="False" Height="58" ToolTip="Support UWUVCI on Ko-Fi">
|
||||
<Image HorizontalAlignment="Left" Height="46" VerticalAlignment="Top" Width="46" Source="/UI/Images/61e111774d3a2f67c827cd25_Frame 5.png" />
|
||||
</Button>
|
||||
|
||||
</Grid>
|
||||
|
||||
</Page>
|
|
@ -17,7 +17,20 @@ namespace UWUVCI_AIO_WPF.UI.Frames
|
|||
|
||||
private void Button_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
Process.Start("https://ko-fi.com/uwuvci");
|
||||
OpenKofiLink("uwuvci");
|
||||
}
|
||||
private void Button_Click2(object sender, RoutedEventArgs e)
|
||||
{
|
||||
OpenKofiLink("zestyts");
|
||||
}
|
||||
private void OpenKofiLink(string urlSuffix)
|
||||
{
|
||||
Process.Start(new ProcessStartInfo()
|
||||
{
|
||||
FileName = "https://ko-fi.com/" + urlSuffix,
|
||||
UseShellExecute = true,
|
||||
Verb = "open"
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
|
@ -13,6 +13,7 @@ using System.Windows.Media;
|
|||
using System.Windows.Media.Imaging;
|
||||
using System.Windows.Navigation;
|
||||
using System.Windows.Shapes;
|
||||
using UWUVCI_AIO_WPF.UI.Windows;
|
||||
|
||||
namespace UWUVCI_AIO_WPF.UI.Frames
|
||||
{
|
||||
|
@ -28,7 +29,9 @@ namespace UWUVCI_AIO_WPF.UI.Frames
|
|||
|
||||
private void tb_PreviewMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
|
||||
{
|
||||
Process.Start("https://www.reddit.com/r/WiiUHacks/comments/jchcls/poc_retroarch_autoboot_starts_rom_automatically/");
|
||||
//Process.Start("https://www.reddit.com/r/WiiUHacks/comments/jchcls/poc_retroarch_autoboot_starts_rom_automatically/");
|
||||
var cm = new Custom_Message("Soon™", "Coming Soon™ to a UWUVCI Prime Near You!");
|
||||
cm.ShowDialog();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -110,15 +110,24 @@ namespace UWUVCI_AIO_WPF.UI.Windows
|
|||
|
||||
private void Folder_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
var filePath = "";
|
||||
try
|
||||
{
|
||||
if (File.Exists(path)) path = new FileInfo(path).DirectoryName;
|
||||
Process.Start(path);
|
||||
filePath = path;
|
||||
if (File.Exists(filePath))
|
||||
filePath = new FileInfo(filePath).DirectoryName;
|
||||
|
||||
Process.Start(new ProcessStartInfo()
|
||||
{
|
||||
FileName = filePath,
|
||||
UseShellExecute = true,
|
||||
Verb = "open"
|
||||
});
|
||||
Close();
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
Custom_Message cm = new Custom_Message("An Error occured", "An error occured opening the folder. Please make sure the Output Path exists.");
|
||||
Custom_Message cm = new Custom_Message("An Error occured", "An error occured opening the folder. Please make sure the Output Path exists.\n\nFile path: " + filePath);
|
||||
try
|
||||
{
|
||||
cm.Owner = (FindResource("mvm") as MainViewModel).mw;
|
||||
|
@ -157,7 +166,7 @@ namespace UWUVCI_AIO_WPF.UI.Windows
|
|||
Close();
|
||||
var containNintendont = Message.Content.ToString().ToLower().Contains("nintendont");
|
||||
|
||||
SDSetup sd = new SDSetup(containNintendont ? true : false, path);
|
||||
SDSetup sd = new SDSetup(containNintendont, path);
|
||||
try
|
||||
{
|
||||
sd.Owner = (FindResource("mvm") as MainViewModel).mw;
|
||||
|
|
|
@ -62,13 +62,20 @@ namespace UWUVCI_AIO_WPF.UI.Windows
|
|||
{
|
||||
msgT.Text = mvm.msg;
|
||||
pb.Value = mvm.Progress;
|
||||
if(Key.Text.Contains("Downloading Base"))
|
||||
if (Key.Text.Contains("Downloading Base"))
|
||||
{
|
||||
if(mvm.Progress < 70)
|
||||
if (mvm.Progress < 70)
|
||||
{
|
||||
mvm.Progress += 1;
|
||||
}
|
||||
}
|
||||
else if (Key.Text.Contains("Injecting Game")) {
|
||||
if (mvm.Progress < 79)
|
||||
mvm.Progress += 1;
|
||||
}
|
||||
else
|
||||
mvm.Progress += 1;
|
||||
|
||||
if(mvm.Progress >= 100)
|
||||
{
|
||||
timer.Stop();
|
||||
|
|
|
@ -511,7 +511,18 @@ namespace UWUVCI_AIO_WPF
|
|||
{
|
||||
try
|
||||
{
|
||||
Process.Start("UWUVCI VWII.exe");
|
||||
var p = new Process();
|
||||
var fileName = Application.ResourceAssembly.Location;
|
||||
foreach (var file in Directory.GetFiles(Directory.GetCurrentDirectory(), "*.exe"))
|
||||
if (!Path.GetFileName(file).Contains(Path.GetFileNameWithoutExtension(fileName)))
|
||||
{
|
||||
fileName = file;
|
||||
break;
|
||||
}
|
||||
|
||||
p.StartInfo.FileName = fileName;
|
||||
p.Start();
|
||||
|
||||
Environment.Exit(0);
|
||||
}
|
||||
catch
|
||||
|
|
|
@ -1,22 +1,7 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="..\packages\Costura.Fody.4.1.0\build\Costura.Fody.props" Condition="Exists('..\packages\Costura.Fody.4.1.0\build\Costura.Fody.props')" />
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProjectGuid>{6A60AB0E-4597-4ECA-AEFB-D63A26CA7B54}</ProjectGuid>
|
||||
<TargetFramework>net6.0-windows</TargetFramework>
|
||||
<OutputType>WinExe</OutputType>
|
||||
<RootNamespace>UWUVCI_AIO_WPF</RootNamespace>
|
||||
<AssemblyName>UWUVCI AIO WPF</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<ProjectTypeGuids>{60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
|
||||
<Deterministic>true</Deterministic>
|
||||
<NuGetPackageImportStamp>
|
||||
</NuGetPackageImportStamp>
|
||||
<IsWebBootstrapper>false</IsWebBootstrapper>
|
||||
<PublishUrl>publish\</PublishUrl>
|
||||
<Install>true</Install>
|
||||
|
@ -32,26 +17,10 @@
|
|||
<ApplicationVersion>1.0.0.%2a</ApplicationVersion>
|
||||
<UseApplicationTrust>false</UseApplicationTrust>
|
||||
<BootstrapperEnabled>true</BootstrapperEnabled>
|
||||
<TargetFrameworkProfile />
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<PlatformTarget>x86</PlatformTarget>
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>bin\Debug\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Release\</OutputPath>
|
||||
<DefineConstants>TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<GenerateAssemblyInfo>false</GenerateAssemblyInfo>
|
||||
<UseWindowsForms>True</UseWindowsForms>
|
||||
<UseWPF>true</UseWPF>
|
||||
<ImportWindowsDesktopTargets>true</ImportWindowsDesktopTargets>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<SignManifests>false</SignManifests>
|
||||
|
@ -64,359 +33,21 @@
|
|||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<StartupObject>UWUVCI_AIO_WPF.App</StartupObject>
|
||||
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="AutoUpdater.NET, Version=1.6.3.0, Culture=neutral, PublicKeyToken=501435c91b35f4bc, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Autoupdater.NET.Official.1.6.3\lib\net45\AutoUpdater.NET.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Costura, Version=4.1.0.0, Culture=neutral, PublicKeyToken=9919ef960d84173d, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Costura.Fody.4.1.0\lib\net40\Costura.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="GameBaseClassLibrary">
|
||||
<HintPath>.\GameBaseClassLibrary.dll</HintPath>
|
||||
<HintPath>..\GameBaseClassLibrary.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Json.Net, Version=1.0.33.1, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Json.Net.1.0.33\lib\netstandard2.0\Json.Net.dll</HintPath>
|
||||
<Reference Include="nfs2iso2nfs">
|
||||
<HintPath>nfs2iso2nfs.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="MaterialDesignColors, Version=1.2.7.1979, Culture=neutral, PublicKeyToken=df2a72020bd7962a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\MaterialDesignColors.1.2.7\lib\net45\MaterialDesignColors.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="MaterialDesignThemes.Wpf, Version=2.6.0.325, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\MaterialDesignThemes.2.6.0\lib\net45\MaterialDesignThemes.Wpf.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="McMaster.Extensions.CommandLineUtils, Version=2.4.2.0, Culture=neutral, PublicKeyToken=6f71cb76b82f055d, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\McMaster.Extensions.CommandLineUtils.2.4.2\lib\net45\McMaster.Extensions.CommandLineUtils.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.WindowsAPICodePack, Version=1.1.2.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\WindowsAPICodePack-Core.1.1.2\lib\Microsoft.WindowsAPICodePack.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.WindowsAPICodePack.Shell, Version=1.1.0.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\WindowsAPICodePack-Shell.1.1.1\lib\Microsoft.WindowsAPICodePack.Shell.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="NAudio, Version=1.10.0.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\NAudio.1.10.0\lib\net35\NAudio.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Newtonsoft.Json, Version=13.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Newtonsoft.Json.13.0.1\lib\net45\Newtonsoft.Json.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Octokit, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Octokit.1.0.0\lib\net46\Octokit.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Pfim, Version=0.10.3.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Pfim.0.10.3\lib\netstandard2.0\Pfim.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Buffers, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Buffers.4.5.0\lib\netstandard2.0\System.Buffers.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.ComponentModel.DataAnnotations" />
|
||||
<Reference Include="System.Data" />
|
||||
<Reference Include="System.Drawing" />
|
||||
<Reference Include="System.IO.Compression" />
|
||||
<Reference Include="System.IO.Compression.FileSystem" />
|
||||
<Reference Include="System.Management" />
|
||||
<Reference Include="System.Runtime.InteropServices.RuntimeInformation, Version=4.0.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Runtime.InteropServices.RuntimeInformation.4.3.0\lib\net45\System.Runtime.InteropServices.RuntimeInformation.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="System.Runtime.Serialization" />
|
||||
<Reference Include="System.ValueTuple, Version=4.0.2.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.ValueTuple.4.4.0\lib\net47\System.ValueTuple.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Windows.Forms" />
|
||||
<Reference Include="System.Xml" />
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
<Reference Include="System.Data.DataSetExtensions" />
|
||||
<Reference Include="System.Net.Http" />
|
||||
<Reference Include="System.Xaml">
|
||||
<RequiredTargetFramework>4.0</RequiredTargetFramework>
|
||||
</Reference>
|
||||
<Reference Include="WindowsBase" />
|
||||
<Reference Include="PresentationCore" />
|
||||
<Reference Include="PresentationFramework" />
|
||||
<Reference Include="Zstandard.Net, Version=1.1.7.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Zstandard.Net.1.1.7\lib\net45\Zstandard.Net.dll</HintPath>
|
||||
<Reference Include="WiiUDownloaderLibrary">
|
||||
<HintPath>WiiUDownloaderLibrary.dll</HintPath>
|
||||
</Reference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ApplicationDefinition Include="App.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</ApplicationDefinition>
|
||||
<Compile Include="AssemblyInfo1.cs" />
|
||||
<Compile Include="Classes\BootImage.cs" />
|
||||
<Compile Include="Classes\KeyFile.cs" />
|
||||
<Compile Include="Classes\MenuIconImage - Kopieren.cs" />
|
||||
<Compile Include="Classes\MenuIconImage.cs" />
|
||||
<Compile Include="Classes\TKeys.cs" />
|
||||
<Compile Include="Classes\ToolCheck.cs" />
|
||||
<Compile Include="UI\Done.xaml.cs">
|
||||
<DependentUpon>Done.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="UI\Frames\InjectFrames\Configurations\OtherConfigs - Kopieren - Kopieren %282%29.xaml.cs">
|
||||
<DependentUpon>OtherConfigs - Kopieren - Kopieren %282%29.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="UI\Frames\InjectFrames\Configurations\OtherConfigs - Kopieren - Kopieren.xaml.cs">
|
||||
<DependentUpon>OtherConfigs - Kopieren - Kopieren.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="UI\Frames\InjectFrames\Configurations\OtherConfigs - Kopieren.xaml.cs">
|
||||
<DependentUpon>OtherConfigs - Kopieren.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="UI\Frames\InjectFrames\Configurations\WiiConfig.xaml.cs">
|
||||
<DependentUpon>WiiConfig.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="UI\Frames\KeyFrame\TKFrame.xaml.cs">
|
||||
<DependentUpon>TKFrame.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="UI\Frames\Path\Paths.xaml.cs">
|
||||
<DependentUpon>Paths.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="UI\Frames\Teaser.xaml.cs">
|
||||
<DependentUpon>Teaser.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="UI\Windows\Custom Message - Kopieren.xaml.cs">
|
||||
<DependentUpon>Custom Message - Kopieren.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="UI\Windows\Custom Message.xaml.cs">
|
||||
<DependentUpon>Custom Message.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="UI\Windows\DownloadWait - Kopieren.xaml.cs">
|
||||
<DependentUpon>DownloadWait - Kopieren.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="UI\Windows\DownloadWait.xaml.cs">
|
||||
<DependentUpon>DownloadWait.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="UI\Windows\EnterKey.xaml.cs">
|
||||
<DependentUpon>EnterKey.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="UI\Windows\ImageCreator - Kopieren - Kopieren %282%29.xaml.cs">
|
||||
<DependentUpon>ImageCreator - Kopieren - Kopieren %282%29.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="UI\Windows\ImageCreator - Kopieren - Kopieren.xaml.cs">
|
||||
<DependentUpon>ImageCreator - Kopieren - Kopieren.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="UI\Windows\ImageCreator - Kopieren.xaml.cs">
|
||||
<DependentUpon>ImageCreator - Kopieren.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="UI\Windows\ImageCreator.xaml.cs">
|
||||
<DependentUpon>ImageCreator.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="UI\Windows\IMG_Message - Kopieren - Kopieren - Kopieren.xaml.cs">
|
||||
<DependentUpon>IMG_Message - Kopieren - Kopieren - Kopieren.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="UI\Windows\IMG_Message - Kopieren - Kopieren.xaml.cs">
|
||||
<DependentUpon>IMG_Message - Kopieren - Kopieren.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="UI\Windows\IMG_Message - Kopieren.xaml.cs">
|
||||
<DependentUpon>IMG_Message - Kopieren.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="UI\Windows\IMG_Message.xaml.cs">
|
||||
<DependentUpon>IMG_Message.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="UI\Windows\TitleKeys - Kopieren.xaml.cs">
|
||||
<DependentUpon>TitleKeys - Kopieren.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="UI\Windows\TitleKeys.xaml.cs">
|
||||
<DependentUpon>TitleKeys.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Page Include="UI\Done.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="UI\Frames\InjectFrame.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="UI\Frames\InjectFrames\Bases\BaseContainerFrame.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="UI\Frames\InjectFrames\Bases\CustomBaseFrame.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="UI\Frames\InjectFrames\Bases\NonCustomBaseFrame.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="UI\Frames\InjectFrames\Configurations\N64Config.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="UI\Frames\InjectFrames\Configurations\OtherConfigs - Kopieren - Kopieren %282%29.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="UI\Frames\InjectFrames\Configurations\OtherConfigs - Kopieren - Kopieren.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="UI\Frames\InjectFrames\Configurations\OtherConfigs - Kopieren.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="UI\Frames\InjectFrames\Configurations\OtherConfigs.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="UI\Frames\InjectFrames\Configurations\WiiConfig.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="UI\Frames\KeyFrame\TKFrame.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="UI\Frames\Path\Paths.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="UI\Frames\SettingsFrame.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="UI\Frames\StartFrame.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="UI\Frames\Teaser.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="UI\Windows\Custom Message - Kopieren.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="UI\Windows\Custom Message.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="UI\Windows\DownloadWait - Kopieren.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="UI\Windows\DownloadWait.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="UI\Windows\EnterKey.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="UI\Windows\ImageCreator - Kopieren - Kopieren %282%29.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="UI\Windows\ImageCreator - Kopieren - Kopieren.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="UI\Windows\ImageCreator - Kopieren.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="UI\Windows\ImageCreator.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="UI\Windows\IMG_Message - Kopieren - Kopieren - Kopieren.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="UI\Windows\IMG_Message - Kopieren - Kopieren.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="UI\Windows\IMG_Message - Kopieren.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="UI\Windows\IMG_Message.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="UI\Windows\MenuWindow.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Compile Include="App.xaml.cs">
|
||||
<DependentUpon>App.xaml</DependentUpon>
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Classes\Injection.cs" />
|
||||
<Compile Include="Classes\N64Conf.cs" />
|
||||
<Compile Include="Classes\PNGTGA.cs" />
|
||||
<Compile Include="Classes\GameConfig.cs" />
|
||||
<Compile Include="Models\BaseModel.cs" />
|
||||
<Compile Include="Models\MainViewModel.cs" />
|
||||
<Compile Include="UI\Frames\InjectFrame.xaml.cs">
|
||||
<DependentUpon>InjectFrame.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="UI\Frames\InjectFrames\Bases\BaseContainerFrame.xaml.cs">
|
||||
<DependentUpon>BaseContainerFrame.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="UI\Frames\InjectFrames\Bases\CustomBaseFrame.xaml.cs">
|
||||
<DependentUpon>CustomBaseFrame.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="UI\Frames\InjectFrames\Bases\NonCustomBaseFrame.xaml.cs">
|
||||
<DependentUpon>NonCustomBaseFrame.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="UI\Frames\InjectFrames\Configurations\N64Config.xaml.cs">
|
||||
<DependentUpon>N64Config.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="UI\Frames\InjectFrames\Configurations\OtherConfigs.xaml.cs">
|
||||
<DependentUpon>OtherConfigs.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="UI\Frames\SettingsFrame.xaml.cs">
|
||||
<DependentUpon>SettingsFrame.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="UI\Frames\StartFrame.xaml.cs">
|
||||
<DependentUpon>StartFrame.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="UI\Windows\MenuWindow.xaml.cs">
|
||||
<DependentUpon>MenuWindow.xaml</DependentUpon>
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Page Include="UI\Windows\TitleKeys - Kopieren.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="UI\Windows\TitleKeys.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Properties\AssemblyInfo.cs">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Properties\Resources.Designer.cs">
|
||||
<AutoGen>True</AutoGen>
|
||||
<DesignTime>True</DesignTime>
|
||||
<DependentUpon>Resources.resx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Properties\Settings.Designer.cs">
|
||||
<AutoGen>True</AutoGen>
|
||||
<DependentUpon>Settings.settings</DependentUpon>
|
||||
<DesignTimeSharedInput>True</DesignTimeSharedInput>
|
||||
</Compile>
|
||||
<EmbeddedResource Include="Properties\Resources.resx">
|
||||
<Generator>ResXFileCodeGenerator</Generator>
|
||||
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
|
||||
</EmbeddedResource>
|
||||
<Resource Include="Font\font.otf" />
|
||||
<None Include="app.manifest" />
|
||||
<None Include="packages.config" />
|
||||
<None Include="Properties\Settings.settings">
|
||||
<Generator>SettingsSingleFileGenerator</Generator>
|
||||
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
|
||||
</None>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="App.config" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Resource Include="UI\Images\bg maybe wpf.png" />
|
||||
|
@ -489,135 +120,6 @@
|
|||
<ItemGroup>
|
||||
<Resource Include="b.ico" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\GBC.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\GCN.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\MSX.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\N64.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\NDS.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\NES.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\SNES-PAL.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\TG16.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\TGCD.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\GBA.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\newgameboy.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\SNES-USA.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\SFAM.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\Icon.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\WII.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\mario.mp3" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\WiiIcon.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\Wii2.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\WIIWARE.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\homebrew3.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\HBICON.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\GCN ICON2.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\wii3New.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\GCN ICON3.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\NDS Alt1.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\N64 alt1.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\bootLogoTex.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\SNES alt1.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\N64 alt2.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\NDS alt2.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\SNES alt2.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\MSX alt1.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\MSX alt2.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\TGFX alt1.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\TGFX alt2.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\GBA alt1.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\GBA alt2.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\GB alt1.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\GB alt2.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\NES alt1.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\NES alt2.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\GBC alt1.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\GBC alt2.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Resource Include="UI\Images\rarch.png" />
|
||||
</ItemGroup>
|
||||
|
@ -655,15 +157,58 @@
|
|||
<ItemGroup>
|
||||
<Resource Include="UI\Images\61e111774d3a2f67c827cd25_Frame 5.png" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
||||
<PropertyGroup>
|
||||
<ErrorText>Dieses Projekt verweist auf mindestens ein NuGet-Paket, das auf diesem Computer fehlt. Verwenden Sie die Wiederherstellung von NuGet-Paketen, um die fehlenden Dateien herunterzuladen. Weitere Informationen finden Sie unter "http://go.microsoft.com/fwlink/?LinkID=322105". Die fehlende Datei ist "{0}".</ErrorText>
|
||||
</PropertyGroup>
|
||||
<Error Condition="!Exists('..\packages\Costura.Fody.4.1.0\build\Costura.Fody.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Costura.Fody.4.1.0\build\Costura.Fody.props'))" />
|
||||
<Error Condition="!Exists('..\packages\Fody.6.3.0\build\Fody.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Fody.6.3.0\build\Fody.targets'))" />
|
||||
<Error Condition="!Exists('..\packages\Zstandard.Net.1.1.7\build\Zstandard.Net.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Zstandard.Net.1.1.7\build\Zstandard.Net.targets'))" />
|
||||
</Target>
|
||||
<Import Project="..\packages\Fody.6.3.0\build\Fody.targets" Condition="Exists('..\packages\Fody.6.3.0\build\Fody.targets')" />
|
||||
<Import Project="..\packages\Zstandard.Net.1.1.7\build\Zstandard.Net.targets" Condition="Exists('..\packages\Zstandard.Net.1.1.7\build\Zstandard.Net.targets')" />
|
||||
<ItemGroup>
|
||||
<PackageReference Include="CDecryptSharp" Version="1.0.4" />
|
||||
<PackageReference Include="CNUSPACKER" Version="1.0.4" />
|
||||
<PackageReference Include="GMWare.M2" Version="1.1.2" />
|
||||
<PackageReference Include="Json.Net" Version="1.0.33" />
|
||||
<PackageReference Include="MaterialDesignThemes" Version="2.5.1" />
|
||||
<PackageReference Include="McMaster.Extensions.CommandLineUtils" Version="4.0.1" />
|
||||
<PackageReference Include="Microsoft.CSharp" Version="4.7.0" />
|
||||
<PackageReference Include="NAudio" Version="2.1.0" />
|
||||
<PackageReference Include="Newtonsoft.Json" Version="13.0.1" />
|
||||
<PackageReference Include="nfs2iso2nfs" Version="1.0.0" />
|
||||
<PackageReference Include="Octokit" Version="2.0.0" />
|
||||
<PackageReference Include="Pfim" Version="0.10.3" />
|
||||
<PackageReference Include="SharpZipLib" Version="1.3.3" />
|
||||
<PackageReference Include="SixLabors.ImageSharp" Version="2.1.3" />
|
||||
<PackageReference Include="System.ComponentModel.Annotations" Version="5.0.0" />
|
||||
<PackageReference Include="System.Data.DataSetExtensions" Version="4.5.0" />
|
||||
<PackageReference Include="WiiUDownloader" Version="1.0.5" />
|
||||
<PackageReference Include="WindowsAPICodePack-Core" Version="1.1.2" />
|
||||
<PackageReference Include="WindowsAPICodePack-Shell" Version="1.1.1" />
|
||||
<PackageReference Include="Microsoft.DotNet.UpgradeAssistant.Extensions.Default.Analyzers" Version="0.4.336902">
|
||||
<PrivateAssets>all</PrivateAssets>
|
||||
</PackageReference>
|
||||
<PackageReference Include="Autoupdater.NET.Official" Version="1.7.4" />
|
||||
<PackageReference Include="Costura.Fody" Version="5.7.0" />
|
||||
<PackageReference Include="Microsoft.Windows.Compatibility" Version="6.0.0" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Remove="Settings.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<COMReference Include="Accessibility">
|
||||
<WrapperTool>tlbimp</WrapperTool>
|
||||
<VersionMinor>1</VersionMinor>
|
||||
<VersionMajor>1</VersionMajor>
|
||||
<Guid>1ea4dbf0-3c3b-11cf-810c-00aa00389b71</Guid>
|
||||
<Lcid>0</Lcid>
|
||||
<Isolated>false</Isolated>
|
||||
<EmbedInteropTypes>true</EmbedInteropTypes>
|
||||
</COMReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Update="Properties\Settings.Designer.cs">
|
||||
<DesignTimeSharedInput>True</DesignTimeSharedInput>
|
||||
<AutoGen>True</AutoGen>
|
||||
<DependentUpon>Settings.settings</DependentUpon>
|
||||
</Compile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Update="Properties\Settings.settings">
|
||||
<Generator>SettingsSingleFileGenerator</Generator>
|
||||
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
|
||||
</None>
|
||||
</ItemGroup>
|
||||
</Project>
|
|
@ -1,22 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="Autoupdater.NET.Official" version="1.6.3" targetFramework="net46" />
|
||||
<package id="Costura.Fody" version="4.1.0" targetFramework="net46" />
|
||||
<package id="Fody" version="6.3.0" targetFramework="net46" developmentDependency="true" />
|
||||
<package id="GMWare.M2" version="1.1.2" targetFramework="net48" />
|
||||
<package id="Json.Net" version="1.0.33" targetFramework="net472" />
|
||||
<package id="MaterialDesignColors" version="1.2.7" targetFramework="net46" />
|
||||
<package id="MaterialDesignThemes" version="2.6.0" targetFramework="net472" />
|
||||
<package id="McMaster.Extensions.CommandLineUtils" version="2.4.2" targetFramework="net48" />
|
||||
<package id="NAudio" version="1.10.0" targetFramework="net46" />
|
||||
<package id="Newtonsoft.Json" version="13.0.1" targetFramework="net472" />
|
||||
<package id="Octokit" version="1.0.0" targetFramework="net472" />
|
||||
<package id="Pfim" version="0.10.3" targetFramework="net472" />
|
||||
<package id="SharpZipLib" version="1.3.3" targetFramework="net48" />
|
||||
<package id="System.Buffers" version="4.5.0" targetFramework="net48" />
|
||||
<package id="System.Runtime.InteropServices.RuntimeInformation" version="4.3.0" targetFramework="net48" />
|
||||
<package id="System.ValueTuple" version="4.4.0" targetFramework="net48" />
|
||||
<package id="WindowsAPICodePack-Core" version="1.1.2" targetFramework="net46" />
|
||||
<package id="WindowsAPICodePack-Shell" version="1.1.1" targetFramework="net46" />
|
||||
<package id="Zstandard.Net" version="1.1.7" targetFramework="net48" />
|
||||
</packages>
|
13353
upgrade-assistant.clef
Normal file
13353
upgrade-assistant.clef
Normal file
File diff suppressed because it is too large
Load diff
Loading…
Reference in a new issue