diff --git a/README.md b/README.md index 04de295..8e112ba 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,10 @@ # ZUGABE + +**This project is inactive for now, since I'm working on a tool for Mac and Linux. Please use [auto-h-encore](https://github.com/noahc3/auto-h-encore) for Windows.** + This tool automates much of the installation of h-encore. -[![Project Status: Active – The project has reached a stable, usable state and is being actively developed.](http://www.repostatus.org/badges/latest/active.svg)](http://www.repostatus.org/#active) +[![Project Status: Inactive – The project has reached a stable, usable state but is no longer being actively developed; support/maintenance will be provided as time allows.](http://www.repostatus.org/badges/latest/inactive.svg)](http://www.repostatus.org/#inactive) ## About This tool automates the install process of thefl0w's h-encore exploit for PS Vita, at least everything that can be done on the PC. @@ -9,7 +12,6 @@ Since I can't code in C or C++, I was unable to use OpenCMA as a backend, so I u Configuration of QCMA is done via registry edits. The application also detects existing QCMA installations and restores the original settings after the exploit was installed. **Attention: This tool only supports connection of the PSVita using Wi-Fi, therefore it's currently only compatible with PSVita/PSTV on Firmware 3.68!** -**For lower versions use noahc3's application [auto-h-encore](https://github.com/noahc3/auto-h-encore)** ## Usage Download from the releases section, extract it and run the executable. @@ -18,9 +20,7 @@ Download from the releases section, extract it and run the executable. Build using Visual Studio 2017, this was tested. Other C# IDEs might work as well. ## Todo -- USB support -- Translations -- Mac/Linux Compatibilty +- Mac/Linux compatibility - Fix bugs (you tell me!) ## Thanks diff --git a/h-encore-auto/AutoMode.xaml.cs b/h-encore-auto/AutoMode.xaml.cs index bdd592a..e8d44e1 100644 --- a/h-encore-auto/AutoMode.xaml.cs +++ b/h-encore-auto/AutoMode.xaml.cs @@ -16,17 +16,8 @@ namespace h_encore_auto { InitializeComponent(); - if (File.Exists(Ref.tempDir + "keepfile")) - { - Ref.areFilesKept = true; - Util.keepFilesCleanup(); - } - else - { - Ref.areFilesKept = false; - if (Directory.Exists(Ref.tempDir)) - Util.DeleteDirectory(Ref.tempDir); - } + if (Directory.Exists(Ref.tempDir)) + Util.DeleteDirectory(Ref.tempDir); InitTimer(); } @@ -64,33 +55,30 @@ namespace h_encore_auto startInfoOut.FileName = "cmd.exe"; startInfoOut.WorkingDirectory = Ref.tempDir; - if (Ref.areFilesKept == false) - { - // 7ZIP Download and extraction - Util.dlFile(Ref.url7zr, "7zr.exe"); - Util.dlFile(Ref.url7za, "7z-extra.7z"); + // 7ZIP Download and extraction + Util.dlFile(Ref.url7zr, "7zr.exe"); + Util.dlFile(Ref.url7za, "7z-extra.7z"); - startInfo.Arguments = "/C 7zr.exe x 7z-extra.7z"; - process.StartInfo = startInfo; - process.Start(); - process.WaitForExit(); + startInfo.Arguments = "/C 7zr.exe x 7z-extra.7z"; + process.StartInfo = startInfo; + process.Start(); + process.WaitForExit(); - //Rest of the tool downloads - Util.dlFile(Ref.urlPsvimg, "psvimgtools.zip"); - Util.dlFile(Ref.urlPkg, "pkg2zip.zip"); - Util.dlFile(Ref.urlEnc, "h-encore.zip"); - Util.dlFile(Ref.urlEntry, "entryPoint.pkg"); - Util.dlFile(Ref.urlQcma, "qcma.zip"); - Util.dlFile(Ref.urlReg, "qcma.reg"); + //Rest of the tool downloads + Util.dlFile(Ref.urlPsvimg, "psvimgtools.zip"); + Util.dlFile(Ref.urlPkg, "pkg2zip.zip"); + Util.dlFile(Ref.urlEnc, "h-encore.zip"); + Util.dlFile(Ref.urlEntry, "entryPoint.pkg"); + Util.dlFile(Ref.urlQcma, "qcma.zip"); + Util.dlFile(Ref.urlReg, "qcma.reg"); - string text = File.ReadAllText(Ref.pathImportReg); - text = text.Replace("REPLACE", Ref.pathQcmaRes); - File.WriteAllText(Ref.pathImportReg, text); - text = text.Replace("\\", "/"); - File.WriteAllText(Ref.pathImportReg, text); - text = text.Replace("HKEY_CURRENT_USER/Software/codestation/qcma", @"HKEY_CURRENT_USER\Software\codestation\qcma"); - File.WriteAllText(Ref.pathImportReg, text); - } + string text = File.ReadAllText(Ref.pathImportReg); + text = text.Replace("REPLACE", Ref.pathQcmaRes); + File.WriteAllText(Ref.pathImportReg, text); + text = text.Replace("\\", "/"); + File.WriteAllText(Ref.pathImportReg, text); + text = text.Replace("HKEY_CURRENT_USER/Software/codestation/qcma", @"HKEY_CURRENT_USER\Software\codestation\qcma"); + File.WriteAllText(Ref.pathImportReg, text); startInfo.Arguments = "/C " + Ref.path7z + " x " + Ref.pathPsvimg; process.StartInfo = startInfo; @@ -122,20 +110,6 @@ namespace h_encore_auto Util.CopyDir(Ref.tempDir + "app\\PCSG90096\\", Ref.tempDir + "h-encore\\app\\ux0_temp_game_PCSG90096_app_PCSG90096\\",true); File.Copy(Ref.tempDir + "app\\PCSG90096\\sce_sys\\package\\temp.bin", Ref.tempDir + @"h-encore\license\ux0_temp_game_PCSG90096_license_app_PCSG90096\6488b73b912a753a492e2714e9b38bc7.rif"); - try - { - string path = Ref.tempDir + "app\\PCSG90096\\resource\\"; - foreach (string k in Ref.trims) - { - Util.DeleteDirectory(path + k); - } - } - catch (Exception ex) - { - MessageBox.Show("Exception: " + ex.Message + "\nYou should tell the developer in a github issue. Include a screenshot if possible!"); - return; - } - startInfoOut.RedirectStandardOutput = true; startInfoOut.UseShellExecute = false; startInfoOut.Arguments = @"/C reg query HKEY_CURRENT_USER\Software\codestation\qcma & echo 0"; diff --git a/h-encore-auto/Util.cs b/h-encore-auto/Util.cs index dab67d8..dcfdc52 100644 --- a/h-encore-auto/Util.cs +++ b/h-encore-auto/Util.cs @@ -94,12 +94,7 @@ namespace h_encore_auto if (Directory.Exists(Ref.tempDir)) { - if (MessageBox.Show("Do you want to keep the downloaded files for future use?\nPressing no will wipe any leftover files of this application off your computer.", "Keep Files?", MessageBoxButton.YesNo) == MessageBoxResult.Yes) - { - keepFilesCleanup(); - } - else - DeleteDirectory(Ref.tempDir); + DeleteDirectory(Ref.tempDir); } Environment.Exit(0); @@ -155,38 +150,5 @@ namespace h_encore_auto } } } - public static void keepFilesCleanup() - { - if (!File.Exists(Ref.tempDir + "keepfile")) - { - File.Create(Ref.tempDir + "keepfile"); - } - - string backupTemp = Ref.tempDir + "keepfiles\\"; - Directory.CreateDirectory(backupTemp); - - foreach (string download in Ref.downloads) - { - File.Copy(Ref.tempDir + download, backupTemp + download); - } - - Util.DeleteDirectory(Ref.tempDir + "\\app"); - Util.DeleteDirectory(Ref.tempDir + "\\Far"); - Util.DeleteDirectory(Ref.tempDir + "\\h-encore"); - Util.DeleteDirectory(Ref.tempDir + "\\Qcma"); - Util.DeleteDirectory(Ref.tempDir + "\\QcmaRes"); - Util.DeleteDirectory(Ref.tempDir + "\\x64"); - - foreach (string file in Directory.GetFiles(Ref.tempDir)) - { - File.Delete(file); - } - - foreach (string download in Ref.downloads) - { - File.Copy(backupTemp + download, Ref.tempDir + download); - } - Util.DeleteDirectory(backupTemp); - } } } \ No newline at end of file diff --git a/h-encore-auto/VitaGuide.xaml.cs b/h-encore-auto/VitaGuide.xaml.cs index 47f662f..66184bd 100644 --- a/h-encore-auto/VitaGuide.xaml.cs +++ b/h-encore-auto/VitaGuide.xaml.cs @@ -50,7 +50,7 @@ namespace h_encore_auto currImg--; imgFrame.Source = new BitmapImage(new Uri("/img/" + currImg + ".png", UriKind.Relative)); buttonFwd.IsEnabled = true; - textField.Text = currText[currImg]; + textField.Text = currText[currImg - 1]; if (currImg == 1 || currImg == 15) { diff --git a/h-encore-auto/ref.cs b/h-encore-auto/ref.cs index 1f55cae..f1fde76 100644 --- a/h-encore-auto/ref.cs +++ b/h-encore-auto/ref.cs @@ -20,31 +20,6 @@ namespace h_encore_auto public static readonly string tempDir = Path.GetTempPath() + @"encore_temp\"; - public static readonly string[] trims = new string[] { - "movie\\", - "image\\bg\\", - "image\\ev\\", - "image\\icon\\", - "image\\stitle\\", - "image\\tachie\\", - "sound\\bgm\\", - "sound\\se\\", - "sound\\sec\\", - "sound\\voice\\", - "text\\01\\" - }; - - public static readonly string[] downloads = new string[] { - "7zr.exe", - "7z-extra.7z", - "entryPoint.pkg", - "h-encore.zip", - "pkg2zip.zip", - "psvimgtools.zip", - "qcma.reg", - "qcma.zip" - }; - public static bool isSecondGuide = false; public static bool isQcmaConfigFound = false; @@ -63,7 +38,6 @@ namespace h_encore_auto public static readonly string pathBackupReg = tempDir + "backup.reg"; public static readonly string pathImportReg = tempDir + "qcma.reg"; public static readonly string pathQcmaRes = tempDir + "QcmaRes\\"; - public static bool areFilesKept = false; public static bool isRegModified = false; }