Giter VIP home page Giter VIP logo

ezyuzu's Introduction

GitHub Release GitHub license GitHub repo size GitHub all releases

EzYuzu

A Portable Yuzu Updater for Standalone versions of Yuzu Mainline or Early Access (EA).

Perfect for those who run Yuzu off an External HDD or through (but not limited to) frontends such as LaunchBox, Steam, EmulationStation and HyperSpin.

EzYuzu v1.6.0.0

Did this program help you? Please consider buying me a cup of coffee to support my work

ko-fi liberapay

Table of Contents

Overview

Methodology

Basic Usage

  1. Browse and locate the your Yuzu Root Folder, this is the folder containing yuzu.exe
  2. EzYuzu will automatically detect the version of yuzu.exe
  3. (Optional): Change Update Channel and/or Update Version
  4. Click on New Install or Update Yuzu
  • Downloads the latest copy of yuzu & extracts it into your Yuzu Root Folder.
  • Automatically checks if your standalone copy of Yuzu is up-to-date.
  • Dependencies are automatically installed when EzYuzu is ran as Administrator.
  • Update Channel and Update Version can be overridden by checking the options within Options > Advanced
  • Post-Update options can be found under Options > General > Update Yuzu
  • It shouldn't overwrite configs unless New Install is displayed. However, backup beforehand.
  • Safe Mode can be launched via holding Ctrl then launching EzYuzu.exe
  • Temp files are stored within TempUpdate and are deleted upon completion.
  • GUIDE for detailed instructions, along with Command Line options.

Downloads

https://github.com/amakvana/EzYuzu/releases/latest

Requires:

Installation - Windows Tutorial

Extract the entire contents of the EzYuzu.zip file, including all .dll files, into a folder and run EzYuzu.exe

EzYuzuSetupAnimated

EzYuzu is 100% portable - it can be run from any location.

EzYuzu does not require Administrator privileges to update Yuzu.

Running as Administrator will install Visual C++ Redistributables dependencies.

Installation - YouTube Tutorial

Watch the video

User Guide

The User Guide can be found here

Acknowledgements

Thanks:

ezyuzu's People

Contributors

amakvana avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

ezyuzu's Issues

EzYuzu Downloads The Update But Fails To Unpack

Describe the bug
When i click update to yuzu 3765 it downloads the file but when it gets to unpacking gives an error (I didnt have yuzu open nor was it open when i checked in task manager)
log.txt

To Reproduce
Steps to reproduce the behavior:

  1. Click on update
  2. Wait to finish
  3. See error

Expected behavior
Update yuzu

Desktop (please complete the following information):

  • OS: Windows 11
  • Version 22H2

Start button next to update button so we can use it as a launcher without having to install latest update

Currently the only way to have yuzu start is by updating or enabling auto start, but it would be handy if there would be a start button next to the update button so we can freely change versions/update channels and then launch yuzu all from 1 shortcut. Also opening EzYuzu when having the latest version installed with the auto update toggle on makes it impossible to change update channels/install an older build without deleting the version file.

Add option to use as launcher. Not just updater

Add option to instantly run yuzu after verifying that there is no update.
That way we can shortcut EzYuzu to desktop instead of yuzu itself. So, we can run and update it from the same shortcut.

Run EzYuzu -> Check for update -> Update to latest channel version -> run yuzu
or
Run EzYuzu -> Check for update -> No update found -> run yuzu

A button to run yuzu in general would be very useful too.

Add .editorconfig

Is your feature request related to a problem? Please describe.
Please provide .editorconfig file so it is easier to contribute.

Describe the solution you'd like
Add .editorconfig file to the repo.

Forcefully shuts down windows when attempting install, puts computer in Repair loop when external drive still plugged in.

Everything in the title. Plugged in an external SSD, created a folder for yuzu, opened EzYuzu, selected the location, selected New Install in the dropdown, clicked install, and my PC was forcefully restarted a few seconds later. When my PC tried to reboot, it would get stuck in an Automatic Repair loop, until I unplugged the drive when it finally exited the loop. Tried it multiple times, happened multiple times.

Steam Deck compatibility

Not sure if it's possible, but is there a way to get this app functioning on the Steam Deck?

I know there's a plugin named Decky Loader that has been used for extra Deck functionality - I wonder if this would be compatible.

Unhandled exception has occured in your application.

Describe the bug

See the end of this message for details on invoking 
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.IO.InvalidDataException: End of Central Directory record could not be found.
   at System.IO.Compression.ZipArchive.ReadEndOfCentralDirectory()
   at System.IO.Compression.ZipArchive.Init(Stream stream, ZipArchiveMode mode, Boolean leaveOpen)
   at System.IO.Compression.ZipArchive..ctor(Stream stream, ZipArchiveMode mode, Boolean leaveOpen, Encoding entryNameEncoding)
   at System.IO.Compression.ZipFile.Open(String archiveFileName, ZipArchiveMode mode, Encoding entryNameEncoding)
   at System.IO.Compression.ZipFile.ExtractToDirectory(String sourceArchiveFileName, String destinationDirectoryName, Encoding entryNameEncoding)
   at EzYuzu.frmMain.<>c__DisplayClass15_0.<ProcessYuzu>b__0(Object s, AsyncCompletedEventArgs e)
   at System.ComponentModel.AsyncCompletedEventHandler.Invoke(Object sender, AsyncCompletedEventArgs e)
   at System.Net.WebClient.OnDownloadFileCompleted(AsyncCompletedEventArgs e)
   at System.Net.WebClient.DownloadFileOperationCompleted(Object arg)


************** Loaded Assemblies **************
mscorlib
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.9032.0 built by: NET481REL1
    CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll
----------------------------------------
EzYuzu
    Assembly Version: 1.2.0.0
    Win32 Version: 1.2.0.0
    CodeBase: file:///F:/Emulators/EzYuzu/EzYuzu.exe
----------------------------------------
System.Windows.Forms
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.9032.0 built by: NET481REL1
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.9032.0 built by: NET481REL1
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.9032.0 built by: NET481REL1
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Configuration
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.9032.0 built by: NET481REL1
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Core
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.9032.0 built by: NET481REL1
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
System.Xml
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.9032.0 built by: NET481REL1
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Accessibility
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.9032.0 built by: NET481REL1
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/Accessibility/v4.0_4.0.0.0__b03f5f7f11d50a3a/Accessibility.dll
----------------------------------------
Ookii.Dialogs.WinForms
    Assembly Version: 1.0.0.0
    Win32 Version: 1.2.0.0
    CodeBase: file:///F:/Emulators/EzYuzu/Ookii.Dialogs.WinForms.DLL
----------------------------------------
System.IO.Compression.FileSystem
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.9032.0
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.IO.Compression.FileSystem/v4.0_4.0.0.0__b77a5c561934e089/System.IO.Compression.FileSystem.dll
----------------------------------------
System.IO.Compression
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.9032.0 built by: NET481REL1
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.IO.Compression/v4.0_4.0.0.0__b77a5c561934e089/System.IO.Compression.dll
----------------------------------------

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:

<configuration>
    <system.windows.forms jitDebugging="true" />
</configuration>

When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.



To Reproduce
Steps to reproduce the behavior:

  1. Open EzYuzu as an administrator
  2. Click on 'Yuzu' from the dropdown box
  3. Click 'Update'
  4. See error

Expected behavior
Upgrade Yuzu.

Screenshots
2022-09-21 (2)

System Information:

  • OS: Windows 11 22H2
  • Version 22621.521

Additional context
This problem seems to have happened after upgrading to Windows 11 22H2 from 21H2

Adminrights evaluation

Hi there,
you wrote that the app requires admin rights in case of missing dependencies. Have you thought about just use runas to restart the app in case it is required. Some people (me eg.;)) fell uncomfortable running every app as admin. In another app I do it his way:

    [SupportedOSPlatform("windows")]
    public static bool checkUac()
    {
        WindowsPrincipal pricipal = new WindowsPrincipal(WindowsIdentity.GetCurrent());
        return pricipal.IsInRole(WindowsBuiltInRole.Administrator);
    }

    [SupportedOSPlatform("windows")]
    public static void runUac()
    {

        if (!checkUac())
        {
            ProcessStartInfo startInfo = new ProcessStartInfo();
            startInfo.UseShellExecute = true;
            startInfo.WorkingDirectory = Environment.CurrentDirectory;
            startInfo.FileName = System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName;
            startInfo.Verb = "runas";
            try
            {
                Process p = Process.Start(startInfo);
                Environment.Exit(0);
            }
            catch (Exception e)
            {
                Console.WriteLine("Error UAC: " + e.Message);
                System.Diagnostics.Debug.WriteLine("This utility requires elevated priviledges to complete correctly.", "Error: UAC Authorisation Required");
            }
        }

    }

No EzYuzu.exe

The github download does not have the EzYuzu.exe file

To Reproduce
Steps to reproduce the behavior:
1: go to https://github.com/amakvana/EzYuzu
2: no EzYuzu.exe
3: go insane trying to figure out the instructions without having the .exe

Expected behavior
Having the .exe

Screenshots
If applicable, add screenshots to help explain your problem.

Desktop (please complete the following information):

  • OS: windows 10
  • Version [e.g. 22]

Changelog

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

EzYuzu v1.4.0.0 currently does not show any change log when there is a new update available for Yuzu.

Describe the solution you'd like
A clear and concise description of what you want to happen.

I would like that the next version of EzYuzu after v1.4.0.0 (I guess v1.5.0.0) will show change log when there is a new update available for Yuzu if possible.

If not then you can close this but let me know why before you close this and explain why.

Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.

An alternative is to view the Yuzu changelogs elsewhere on the internet using any internet browser like Microsoft Edge, Google Chrome, Mozilla Firefox, Opera and etc.

Additional context
Add any other context or screenshots about the feature request here.

A changelog is a list of changes that the update does.
In this list the user can see what was added to Yuzu, what was removed from Yuzu and what was modified in Yuzu and etc.

Can't load 'system.Runtime.CompilerServices.Unsafe'

Describe the bug
When I click "update" I get a window with an unhandled exception

To Reproduce
Steps to reproduce the behavior:
Open EzYuzu
Choose the correct path
Click "Update"
Error appears

Screenshots
image

Desktop (please complete the following information):

  • OS: Windows 11 Pro
  • Version 22H2

Additional context
I crashes even when opening with admin rights.

Looking to collaborate with the dev

Is your feature request related to a problem? Please describe.
No, this is no related to a problem per se. This is an idea and would like to talk in private with the dev on maybe branching this tool into a tool for other emulators. I am very new to writing code/dev apps apart from AutoHotKey and a few other scripting languages but want to do this and give back to the community and figure talking with the dev would be a great start. Unfortunately, I am unsure of how I would go about connecting. I don't want to put my email or Discord handle out here for the public so I figure with this, I can reach out and you can decide if you are interested and can decide the best way to conncet.

Describe the solution you'd like
Talking in private, lol

Additional context
So after discovering the beauty of using this tool to update Yuzu silently as a task in task scheduler, I decided to search for tools like this for other emulators. Even though many emus offer updating within the program, in my use case (launching games from launchbox) it is not ideal as I don't keep a KB/M attached to my HTPC. I found one for Xenia emu and asked the dev to implement silent update switches and he went on to make a .net CLI tool which works great. I decided to try editing the source code to use it to update Xemu emulator and that half butt works. The biggest problem I have is it shows a console window when it is ran, the other issue is that this tool only works when the LICENSE.txt file is deleted. So, I want to make a few different updaters (using your source code for a base) for all the emus I use and release them for the people in my same use case.

I look forward to hearing back from you.

1.3.0.0 Unhandled exception causing crash

In the latest version, when clicking on the Yuzu Location box or the ... next to it I get an unhandled exception error with the following report. Clicking continue and trying again, or restarting the program doesn't fix it.

See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.IO.FileNotFoundException: Could not load file or assembly 'Ookii.Dialogs.WinForms, Version=1.0.0.0, Culture=neutral, PublicKeyToken=66aa232afad40158' or one of its dependencies. The system cannot find the file specified.
File name: 'Ookii.Dialogs.WinForms, Version=1.0.0.0, Culture=neutral, PublicKeyToken=66aa232afad40158'
at EzYuzu.frmMain.BtnBrowse_Click(Object sender, EventArgs e)
at EzYuzu.frmMain.TxtYuzuLocation_Click(Object sender, EventArgs e)
at System.Windows.Forms.Control.OnClick(EventArgs e)
at System.Windows.Forms.TextBoxBase.OnMouseUp(MouseEventArgs mevent)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.TextBoxBase.WndProc(Message& m)
at System.Windows.Forms.TextBox.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

WRN: Assembly binding logging is turned OFF.
To enable assembly bind failure logging, set the registry value [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) to 1.
Note: There is some performance penalty associated with assembly bind failure logging.
To turn this feature off, remove the registry value [HKLM\Software\Microsoft\Fusion!EnableLog].

************** Loaded Assemblies **************
mscorlib
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4515.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll

EzYuzu
Assembly Version: 1.3.0.0
Win32 Version: 1.3.0.0
CodeBase: file:///D:/Downloads/ezyuzu/EzYuzu.exe

System.Windows.Forms
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4550.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll

System
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4536.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll

System.Drawing
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4390.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll

System.Configuration
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4190.0 built by: NET48REL1LAST_B
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll

System.Core
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4590.0 built by: NET48REL1LAST_B
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll

System.Xml
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4084.0 built by: NET48REL1
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:

When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.

Support manually set a proxy for updating yuzu

Is your feature request related to a problem? Please describe.
In some regions, it can be slow to access sites like GitHub, thus the download speed of using EzYuzu to update Yuzu will be quite slow. A HTTP or Socks5 proxy can be used to speedup downloading, but users usually won't want to set a system-level proxy if they only want a specific app to use the proxy.

Describe the solution you'd like
Add an option to allow set a http or socks5 proxy manually. It could have the following options:

  1. Proxy type: Follow System / HTTP / Socks5
  2. Host
  3. Port

Describe alternatives you've considered
It could be good if the app can support both HTTP and socks5, but only HTTP or socks5 is also okay,

Additional context
ssh -D can be used to set up a simple socks5 server which can be much easier for testing. Other proxy tools could work as well.

The input string was not in a correct format

Describe the bug
Opening the program the first time did not throw any error, once I chose my Yuzu directory, this error popped up immediately and now also appears every time I open EzYuzu. I currently have Yuzu 3599 from PineappleEA.

To Reproduce
Steps to reproduce the behavior:

  1. Select Directory with Yuzu.exe
  2. Clicking Continue just makes EzYuzu expect you to still pick a Yuzu directory

Screenshots
image


************** Exception Text **************
System.FormatException: The input string '18.3.7' was not in a correct format.
   at System.Number.ThrowOverflowOrFormatException(ParsingStatus status, ReadOnlySpan`1 value, TypeCode type)
   at System.Int32.Parse(String s)
   at EzYuzu.Classes.Yuzu.Detectors.YuzuInstallationStateDetector.GetYuzuInstallationStateAsync(Int32 latestVersionAvailable)
   at EzYuzu.FrmMain.RefreshDetectedYuzuInstallationStateAsync(YuzuBranch detectedYuzuBranch)
   at EzYuzu.FrmMain.FrmMain_LoadAsync(Object sender, EventArgs e)
   at System.Threading.Tasks.Task.<>c.<ThrowAsync>b__128_0(Object state)
   at InvokeStub_SendOrPostCallback.Invoke(Object, Object, IntPtr*)
   at System.Reflection.MethodInvoker.Invoke(Object obj, IntPtr* args, BindingFlags invokeAttr)

Desktop (please complete the following information):

  • OS: Windows 11
  • Version 22H2

Regarding EzYuzu.settings.json

Previous version was saving it's settings inside the program itself, while the newer one creates .json file with a Yuzu.exe Folder Location and some other stuff.
Personally, it wouldn't be an issue if I didn't have EzYuzu on my desktop

What about a toggle that makes settings either inside the program OR in the .json file?

Also, "Update from X to Y" instead of "Update to Y" is pretty cool. Just like in Ryujinx

[FEATURE/BUG] Add Support for network drives

Is your feature request related to a problem? Please describe.
It somewhat is a bug and also a feature request, I have my YuZu install on my NAS that i mounted on Windows as a network drive (Z:). Sadly, the file picker doesn't let me navigate to that drive and therefor not to my YuZu location.

Describe the solution you'd like
The file picker should allow network drives to be selected.

Describe alternatives you've considered
I considered copying everything to my pc, then update it just to re-upload it to my NAS. But this doesn't seam like a good and useful solution to me.

Additional context
How about some OS info and what version I use of EsYuzu?
EsYuzu Version: 1.5.1.0
Windows 11 PRO | 22H2 (0S Build 22621.1555)

3 second time out before closing and opening up Yuzu

Is your feature request related to a problem? Please describe.
When there isn't an update and Ez is set to close and open Yuzu, It is impossible to get to the menu tabs before Ez closes.
Describe the solution you'd like
Maybe a 3 second wait period before closing and opening up Yuzu, so one could have a moment to click on the settings tab?
Describe alternatives you've considered
Idk maybe a right click option to get to the settings or override the update auto close/open function?
Additional context
Thank you so much for this functional little program, especially now that Yuzu is updating multiple times per day and a certain Game that rhymes with "Beers of the Random" is seeing daily improvements because of it. Very convenient.

Bitdefender says 1.6.1.0 EzYuzu.exe is infected with Gen:Suspicious.Cloud.4.sE3@aqlScAd

Just ran the exe after downloading

https://github.com/amakvana/EzYuzu/releases/download/v1.6.1.0/EzYuzu.zip

again, and Bitdefender immediately quarantined it again.

I don't get this message with 1.5.1.0, but now when I try using it instead, it always redirects me to download the new version since it's no longer supported. It does stay on and usable in the background, but you get the nag message and web page opened every time.

Which brings me to a related:

Feature Request: please check whether or not an internet connection is available, and just display a message saying "No connection available" with a "retry" button if that is the case, instead of assuming the app is outdated and opening my web browser to download a new version, when the only issue is my VPN killswitch is on, or I'm otherwise not connected to the internet.

Allow EzYuzu to work independently (manually update old (packaged) version of yuzu)

Hi, I was one of the few peeps who got to know your work on reddit, and it helped me update a sandboxed/packaged version of yuzu to the latest one. This allowed for the game to run much better, and I sincerely appreciated your work :)

As a lot of users might be keen to go back/rediscover unplayed games on their list, I am thinking it would be great if EzYuzu can be tweaked to be able to assist them to update the (old) packaged version of yuzu, with the last known version (to be supplied by user) or alternately, any version that the user supplies.

While i am not a coder, i feel like this would only require small modifications from your end, as it is essentially doing the same, only this time with files supplied by user and not from an online server that has been taken down.

Thank you!
(FIngers crossed!)

Add feature to rollback to a specific/previous version after update.

Is your feature request related to a problem? Please describe.
As YUZU is in constant development and sometimes things break for some games. It would be useful if EzYuzu can store the previous version installed so if a new update is available and is not stable, users can go back to the previous version.

Describe the solution you'd like
For example:

  • A user has installed the Mainline build 1388 with stable features and after some weeks he opens EzYuzu and an update is available to Mainline Build 1407 (It would also be useful to display the build version that is being updated: currentBuildNumber -> newBuildNumber in the "Update Yuzu" button)
  • After the update the user finds that the emulator is unstable and he opens EzYuzu and from the menu bar selects Options->Previous Versions, Clicks on the last one Mainline Build1388 and it's reinstalled.
  • For this feature to work EzYuzu should keep track of at least 1 installed build number so it can be appended to the GitHub URL and be able to download it: https://github.com/yuzu-emu/yuzu-mainline/releases/tag/mainline-0-{buildNumber}

Describe alternatives you've considered
Another way to implement this feature could be to include an input field for the build number so EzYuzu can download it and install it.

Additional context
Add any other context or screenshots about the feature request here.

Run with command line

Is your feature request related to a problem? Please describe.
I have multiple instances of yuzu from multiple switches I've ripped, so it's inconvenient to select the folder and update each one. I like to stay on the latest version so I'm constantly updating.

Describe the solution you'd like
If EzYuzu supported running from the command line with flags for at least install path, I could easily run that command and launch that instance of yuzu all from one batch file in one click.

Describe alternatives you've considered
EzYuzu could support updating multiple installs which would be convenient enough.

Additional context
None. Thanks for an amazing app

Unhandled exception.

This application was working for me quite literally a couple hours from me posting this, but now it just gives me the same error every time I select the path where Yuzu is located. I've tried doing different paths, too, but nothing seems to work. I have all the dependencies installed.
Screenshot 2024-03-04 150045
Here's the entire error message:
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.Net.Http.HttpRequestException: Response status code does not indicate success: 404 (Not Found).
at System.Net.Http.HttpResponseMessage.EnsureSuccessStatusCode()
at System.Net.Http.HttpClient.GetStreamAsyncCore(HttpRequestMessage request, CancellationToken cancellationToken)
at EzYuzu.Classes.Yuzu.Detectors.YuzuBranchDetector.GetDetectedBranchAvailableUpdateVersionsAsync(YuzuBranch detectedYuzuBranch)
at EzYuzu.FrmMain.RefreshDetectedYuzuInstallationUpdateVersionsAsync(YuzuBranch detectedYuzuBranch)
at EzYuzu.FrmMain.FrmMain_LoadAsync(Object sender, EventArgs e)
at System.Threading.Tasks.Task.<>c.b__128_0(Object state)
at InvokeStub_SendOrPostCallback.Invoke(Object, Object, IntPtr*)
at System.Reflection.MethodInvoker.Invoke(Object obj, IntPtr* args, BindingFlags invokeAttr)

************** Loaded Assemblies **************
System.Private.CoreLib
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.Private.CoreLib.dll

EzYuzu
Assembly Version: 1.6.2.1
Win32 Version: n/a
CodeBase:

System.Runtime
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.Runtime.dll

System.ComponentModel
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.ComponentModel.dll

System.Windows.Forms
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6711
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.WindowsDesktop.App/7.0.16/System.Windows.Forms.dll

System.ComponentModel.Primitives
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.ComponentModel.Primitives.dll

System.Windows.Forms.Primitives
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6711
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.WindowsDesktop.App/7.0.16/System.Windows.Forms.Primitives.dll

System.Runtime.InteropServices
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.Runtime.InteropServices.dll

System.Drawing.Primitives
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.Drawing.Primitives.dll

System.Collections.Specialized
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.Collections.Specialized.dll

Microsoft.Extensions.DependencyInjection.Abstractions
Assembly Version: 8.0.0.0
Win32 Version: n/a
CodeBase:

Microsoft.Extensions.Http
Assembly Version: 8.0.0.0
Win32 Version: n/a
CodeBase:

System.Net.Http
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.Net.Http.dll

Microsoft.Extensions.DependencyInjection
Assembly Version: 8.0.0.0
Win32 Version: n/a
CodeBase:

System.Collections
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.Collections.dll

Microsoft.Extensions.Logging
Assembly Version: 8.0.0.0
Win32 Version: n/a
CodeBase:

Microsoft.Extensions.Options
Assembly Version: 8.0.0.0
Win32 Version: n/a
CodeBase:

Microsoft.Extensions.Logging.Abstractions
Assembly Version: 8.0.0.0
Win32 Version: n/a
CodeBase:

System.Linq
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.Linq.dll

System.Collections.Concurrent
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.Collections.Concurrent.dll

System.Diagnostics.Tracing
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.Diagnostics.Tracing.dll

System.Threading
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.Threading.dll

System.Diagnostics.TraceSource
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.Diagnostics.TraceSource.dll

System.Drawing.Common
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.WindowsDesktop.App/7.0.16/System.Drawing.Common.dll

Microsoft.Win32.Primitives
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/Microsoft.Win32.Primitives.dll

System.ComponentModel.EventBasedAsync
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.ComponentModel.EventBasedAsync.dll

System.Threading.Thread
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.Threading.Thread.dll

Accessibility
Assembly Version: 4.0.0.0
Win32 Version: 7.0.1624.6711
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.WindowsDesktop.App/7.0.16/Accessibility.dll

System.ComponentModel.TypeConverter
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.ComponentModel.TypeConverter.dll

System.Memory
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.Memory.dll

System.Numerics.Vectors
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.Numerics.Vectors.dll

Microsoft.Win32.SystemEvents
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.WindowsDesktop.App/7.0.16/Microsoft.Win32.SystemEvents.dll

System.Runtime.Loader
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.Runtime.Loader.dll

System.Resources.Extensions
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.WindowsDesktop.App/7.0.16/System.Resources.Extensions.dll

System.Drawing
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6711
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.WindowsDesktop.App/7.0.16/System.Drawing.dll

System.ObjectModel
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.ObjectModel.dll

System.Text.Json
Assembly Version: 8.0.0.0
Win32 Version: n/a
CodeBase:

System.Security.Principal.Windows
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.Security.Principal.Windows.dll

System.Security.Claims
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.Security.Claims.dll

System.Text.Encodings.Web
Assembly Version: 8.0.0.0
Win32 Version: n/a
CodeBase:

System.Text.Encoding.Extensions
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.Text.Encoding.Extensions.dll

System.Runtime.Intrinsics
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.Runtime.Intrinsics.dll

System.Private.Uri
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.Private.Uri.dll

System.Reflection.Emit.Lightweight
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.Reflection.Emit.Lightweight.dll

System.Reflection.Emit.ILGeneration
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.Reflection.Emit.ILGeneration.dll

System.Reflection.Primitives
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.Reflection.Primitives.dll

System.Collections.NonGeneric
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.Collections.NonGeneric.dll

System.Diagnostics.Process
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.Diagnostics.Process.dll

System.Diagnostics.FileVersionInfo
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.Diagnostics.FileVersionInfo.dll

System.Net.Primitives
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.Net.Primitives.dll

System.Threading.ThreadPool
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.Threading.ThreadPool.dll

System.Diagnostics.DiagnosticSource
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.Diagnostics.DiagnosticSource.dll

System.Net.Security
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.Net.Security.dll

System.Security.Cryptography
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.Security.Cryptography.dll

System.Net.Quic
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.Net.Quic.dll

Microsoft.Win32.Registry
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/Microsoft.Win32.Registry.dll

System.Net.Sockets
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.Net.Sockets.dll

System.Threading.Overlapped
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.Threading.Overlapped.dll

System.Net.NameResolution
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.Net.NameResolution.dll

System.Diagnostics.StackTrace
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.Diagnostics.StackTrace.dll

System.Reflection.Metadata
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.Reflection.Metadata.dll

System.Collections.Immutable
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1624.6629
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.16/System.Collections.Immutable.dll

************** JIT Debugging **************

Equivalent for Citra

Can a equivalent of this program be plausibly made for Citra, the 3DS emulator?

Add option to automatically rename yuzu.exe to cemu.exe for HDR support on Windows 11

Is your feature request related to a problem? Please describe.
Yes, my feature request is indeed related to a problem. As a user of Windows 11, I find that HDR support is not readily available for yuzu.exe in the open-source application. This creates a disconnect in the overall user experience as Windows 11 natively supports HDR, but this cannot be leveraged effectively due to the lack of support within yuzu.exe.

Describe the solution you'd like
I propose an automatic renaming option for yuzu.exe to cemu.exe. Windows 11 recognizes cemu.exe for HDR support and this would be a simple and straightforward solution to implement. This feature could be added to the settings of the open-source app, enabling users to toggle on or off the automatic renaming feature as required.

Describe alternatives you've considered
A couple of alternatives come to mind:

  1. Manual renaming: Though currently feasible, it is inconvenient as it requires users to remember to do so each time they want to take advantage of the HDR support.

  2. Engaging with Microsoft to include yuzu.exe in their list of applications that can leverage HDR. While this might be the ideal solution, it may take a longer time and the outcome isn't guaranteed.

Additional context
HDR support is an essential feature for many users today and its lack of support can result in a sub-optimal user experience. The proposed solution should be relatively easy to implement and would provide immediate benefits to Windows 11 users, while we explore other long-term solutions.

New version of ezyuzu crashes on started

Describe the bug
ezyuzu crashes with error

To Reproduce
Steps to reproduce the behavior:

  1. Launch ezyuzu (16.2.0)
  2. Observe error:
    [code]See the end of this message for details on invoking
    just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.ComponentModel.Win32Exception (2): An error occurred trying to start process 'D:\Games\Nintendo Switch\Yuzu\Yuzu Early Access\yuzu.exe' with working directory 'D:\Games\Nintendo Switch\EzYuzu'. The system cannot find the file specified.
at System.Diagnostics.Process.StartWithShellExecuteEx(ProcessStartInfo startInfo)
at System.Diagnostics.Process.Start(ProcessStartInfo startInfo)
at EzYuzu.FrmMain.FrmMain_LoadAsync(Object sender, EventArgs e)
at System.Threading.Tasks.Task.<>c.b__128_0(Object state)
at InvokeStub_SendOrPostCallback.Invoke(Object, Object, IntPtr*)
at System.Reflection.MethodInvoker.Invoke(Object obj, IntPtr* args, BindingFlags invokeAttr)

************** Loaded Assemblies **************
System.Private.CoreLib
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.Private.CoreLib.dll

EzYuzu
Assembly Version: 1.6.2.0
Win32 Version: n/a
CodeBase:

System.Runtime
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.Runtime.dll

System.ComponentModel
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.ComponentModel.dll

System.Windows.Forms
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42502
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.WindowsDesktop.App/7.0.11/System.Windows.Forms.dll

System.ComponentModel.Primitives
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.ComponentModel.Primitives.dll

System.Windows.Forms.Primitives
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42502
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.WindowsDesktop.App/7.0.11/System.Windows.Forms.Primitives.dll

System.Runtime.InteropServices
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.Runtime.InteropServices.dll

System.Drawing.Primitives
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.Drawing.Primitives.dll

System.Collections.Specialized
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.Collections.Specialized.dll

Microsoft.Extensions.DependencyInjection.Abstractions
Assembly Version: 8.0.0.0
Win32 Version: n/a
CodeBase:

Microsoft.Extensions.Http
Assembly Version: 8.0.0.0
Win32 Version: n/a
CodeBase:

System.Net.Http
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.Net.Http.dll

Microsoft.Extensions.DependencyInjection
Assembly Version: 8.0.0.0
Win32 Version: n/a
CodeBase:

System.Collections
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.Collections.dll

Microsoft.Extensions.Logging
Assembly Version: 8.0.0.0
Win32 Version: n/a
CodeBase:

Microsoft.Extensions.Options
Assembly Version: 8.0.0.0
Win32 Version: n/a
CodeBase:

Microsoft.Extensions.Logging.Abstractions
Assembly Version: 8.0.0.0
Win32 Version: n/a
CodeBase:

System.Linq
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.Linq.dll

System.Collections.Concurrent
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.Collections.Concurrent.dll

System.Diagnostics.Tracing
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.Diagnostics.Tracing.dll

System.Threading
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.Threading.dll

System.Diagnostics.TraceSource
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.Diagnostics.TraceSource.dll

System.Drawing.Common
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.WindowsDesktop.App/7.0.11/System.Drawing.Common.dll

Microsoft.Win32.Primitives
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/Microsoft.Win32.Primitives.dll

System.ComponentModel.EventBasedAsync
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.ComponentModel.EventBasedAsync.dll

System.Threading.Thread
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.Threading.Thread.dll

Accessibility
Assembly Version: 4.0.0.0
Win32 Version: 7.0.1123.42502
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.WindowsDesktop.App/7.0.11/Accessibility.dll

System.ComponentModel.TypeConverter
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.ComponentModel.TypeConverter.dll

System.Memory
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.Memory.dll

System.Numerics.Vectors
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.Numerics.Vectors.dll

Microsoft.Win32.SystemEvents
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.WindowsDesktop.App/7.0.11/Microsoft.Win32.SystemEvents.dll

System.Runtime.Loader
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.Runtime.Loader.dll

System.Resources.Extensions
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.WindowsDesktop.App/7.0.11/System.Resources.Extensions.dll

System.Drawing
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42502
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.WindowsDesktop.App/7.0.11/System.Drawing.dll

System.ObjectModel
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.ObjectModel.dll

System.Text.Json
Assembly Version: 8.0.0.0
Win32 Version: n/a
CodeBase:

System.Security.Principal.Windows
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.Security.Principal.Windows.dll

System.Security.Claims
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.Security.Claims.dll

System.Text.Encodings.Web
Assembly Version: 8.0.0.0
Win32 Version: n/a
CodeBase:

System.Text.Encoding.Extensions
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.Text.Encoding.Extensions.dll

System.Runtime.Intrinsics
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.Runtime.Intrinsics.dll

System.Private.Uri
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.Private.Uri.dll

System.Reflection.Emit.Lightweight
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.Reflection.Emit.Lightweight.dll

System.Reflection.Emit.ILGeneration
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.Reflection.Emit.ILGeneration.dll

System.Reflection.Primitives
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.Reflection.Primitives.dll

System.Collections.NonGeneric
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.Collections.NonGeneric.dll

System.Diagnostics.Process
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.Diagnostics.Process.dll

System.Diagnostics.FileVersionInfo
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.Diagnostics.FileVersionInfo.dll

System.Net.Primitives
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.Net.Primitives.dll

System.Threading.ThreadPool
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.Threading.ThreadPool.dll

System.Diagnostics.DiagnosticSource
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.Diagnostics.DiagnosticSource.dll

System.Net.Security
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.Net.Security.dll

System.Security.Cryptography
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.Security.Cryptography.dll

System.Net.Quic
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.Net.Quic.dll

System.Net.Sockets
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.Net.Sockets.dll

System.Threading.Overlapped
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.Threading.Overlapped.dll

System.Net.NameResolution
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.Net.NameResolution.dll

System.Diagnostics.StackTrace
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.Diagnostics.StackTrace.dll

System.Reflection.Metadata
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.Reflection.Metadata.dll

System.Collections.Immutable
Assembly Version: 7.0.0.0
Win32 Version: 7.0.1123.42427
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/7.0.11/System.Collections.Immutable.dll

************** JIT Debugging **************
[/code]

Expected behavior
Not crash :)

Desktop (please complete the following information):
-Windows 10 LTSC 2021 OS Build 19044.3448

16.1.0 does not crash.

Keeps renaming yuzu.exe

Updating will consistently keep renaming yuzu.exe to cemu.exe for some strange reason, breaking all integrations pointing to the original executable.

Scaling issues

Describe the bug
I am using on a 4k screen and can't see the menu buttons or resize the window. I have tried disabling full screen optimizations and toggled through all of the high dpi settings.
Screenshot (1)

To Reproduce
Steps to reproduce the behavior:
just running it

Expected behavior
to resize the window so I can see the menu and other options
Screenshots
If applicable, add screenshots to help explain your problem.

Desktop (please complete the following information):

  • OS: win 11

Additional context
4k screen, latest nvidia drivers, rtx 4080

Support suyu emulator

With yuzu gone, could this project be migrated to support suyu?

It's still early days so there's potential.

Command line for updating silently

Hi, as the title suggests, I would love to see support for command line arguments for silently updating.

Describe the solution you'd like
Some kind of command line implementation for updating Yuzu silently through CMD or PowerShell. Ideally, this would be used to create a task in task scheduler in Windows.
Another idea would be to have an option to run at system start and have it quietly check for updates from the system tray with the ability to tell it how frequently we want it to check for updates (hourly, daily, weekly, bi-weekly, monthly). Maybe offering options for both. ie: creating a task in task scheduler and/or running from the system tray.

Additional context
I am among the many users of the amazing frontend, LaunchBox. Use LaunchBox users tend to automate nearly everything to keep the computer as appliance-like as possible whine letting our emulators up-to-date while using LaunchBox I use it as the shell for our PCs (instead of Windows explorer) and we only have gamepads out arcade sticks connected for navigation of the system and only use a kb/m for servicing the emulators etc. Well due to the age of Yuzu and it frequently being updated and it's performance ever increasing, we need to keep LB as up-to-date as possible but it kinda kills the appliance-like experience and creates additional windows for downtime. So being able to keep it automatically as well as silently updated, would be a great feature to have and would placate a somewhat large group of users and is something I think all Yuzu users would welcome. (Instead of using the maintenance tool, which cannot be programmed to automatically update or even be ran from CMD/PowerShell or any scripting language that I've found)

Update -2147483648

Describe the bug
Today I decided to update from 3940 to 3942, but it caused some error, so I decided to download YuzuEA directly from Pineapple's Github

And now EzYuzu says that I'm supposedly on a version -2147483648

To Reproduce
Steps to reproduce the behavior:

  1. Download the latest YuzuEA version at https://github.com/pineappleEA/pineapple-src/releases/tag/EA-3942
    1.1 (OR Try to update yuzu from 3940 to 3942 to get a completely different, but maybe relevant error)
  2. Open EzYuzu
  3. It should say "Update from -2147483648 to 3942"
  4. See error

Expected behavior
"Yuzu is up to date!"

Screenshots
image

Desktop (please complete the following information):

  • OS: Windows 10
  • Version 22H2

Additional context
I assume that this is either some sort of protection or just a bug (maybe even on my side only)

New version 1.6 detected as a trojan in Windows Defender

Describe the bug
Windows Defender has flagged EzYuzu as a "TrojanScript/Wacatac.H!ml"

To Reproduce
Steps to reproduce the behavior:

  1. Download or try to open EzYuzu
  2. See the error

Screenshots
Screenshot 2023-05-24 113525

Desktop

  • OS: Windows 11 Pro
  • 22H2 10.0.22621 Build 22621

EzYuzu - Yuzu Portable Updater

Describe the bug
A clear and concise description of what the bug is.

Unhandled exception has occurred in your application. If you click Continue, the application will ignore this error and attempt to continue. If you click Quit, the application will close immediately.

The file 'D:\Emulators\YuZu\yuzu-windows-msvc\avcodec-58.dll' already exists.

To Reproduce
Steps to reproduce the behaviour:

  1. Go to the directory or folder of 'EzYuzu.exe'
  2. Click on 'EzYuzu.exe'
  3. Scroll down to 'Yuzu' and click on the "Update" button if clicking on the "Check" button reports that there is a new update.
  4. Wait for it to complete and then see error

Expected behaviour
A clear and concise description of what you expected to happen.

"EzYuzu - Yuzu Portable Updater" should just and simply update the Yuzu emulator in the given directory or folder if there is a new update.

Screenshots
If applicable, add screenshots to help explain your problem.

image

Desktop (please complete the following information):

  • OS: [e.g. Windows 10, Windows 7]
  • Version [e.g. 22]

Windows 10 64 bit

Additional context
Add any other context about the problem here.

Error Details:

See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.IO.IOException: The file 'D:\Emulators\YuZu\yuzu-windows-msvc\avcodec-58.dll' already exists.
at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share)
at System.IO.Compression.ZipFileExtensions.ExtractToFile(ZipArchiveEntry source, String destinationFileName, Boolean overwrite)
at System.IO.Compression.ZipFileExtensions.ExtractToDirectory(ZipArchive source, String destinationDirectoryName)
at System.IO.Compression.ZipFile.ExtractToDirectory(String sourceArchiveFileName, String destinationDirectoryName, Encoding entryNameEncoding)
at EzYuzu.frmMain.<>c__DisplayClass15_0.b__0(Object s, AsyncCompletedEventArgs e)
at System.ComponentModel.AsyncCompletedEventHandler.Invoke(Object sender, AsyncCompletedEventArgs e)
at System.Net.WebClient.OnDownloadFileCompleted(AsyncCompletedEventArgs e)
at System.Net.WebClient.DownloadFileOperationCompleted(Object arg)

************** Loaded Assemblies **************
mscorlib
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4515.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll

EzYuzu
Assembly Version: 1.3.0.0
Win32 Version: 1.3.0.0
CodeBase: file:///D:/Emulators/EzYuzu/EzYuzu.exe

System.Windows.Forms
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4550.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll

System
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4536.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll

System.Drawing
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4390.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll

System.Configuration
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4190.0 built by: NET48REL1LAST_B
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll

System.Core
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4566.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll

System.Xml
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4084.0 built by: NET48REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll

System.IO.Compression.FileSystem
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4084.0
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.IO.Compression.FileSystem/v4.0_4.0.0.0__b77a5c561934e089/System.IO.Compression.FileSystem.dll

System.IO.Compression
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4084.0 built by: NET48REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.IO.Compression/v4.0_4.0.0.0__b77a5c561934e089/System.IO.Compression.dll

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:

When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.

It doesn't matter if I click on "Continue" or "Quit" buttons. The version of the installed Yuzu is always 1285

Yuzu arguments passthrough

It would be useful to support passing arguments to the yuzu executable,
for example, in the case yuzu is ran from a launcher with -f -g "{ImagePath}".

Usually this is handled with a special parameter which takes all the remaining arguments and passes
them down to the executable. Other tools use --, although that brings up a common pitfall in windows Powershell.

Close after finishing update and update without needing to click the button

Is your feature request related to a problem? Please describe.
Not related to any issue, would just streamline the process,

Describe the solution you'd like
Two options - one to automatically close ExYuzu when the update is complete, and another to automatically begin the update as soon as the app opens.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.