beeradmoore / dlss-swapper

GNU General Public License v3.0
1.73k stars 62 forks source link

[Feature request] Uninstaller should remove only files related to the DLSS software #201

Open jigmcgalliger opened 9 months ago

jigmcgalliger commented 9 months ago

Is your feature request related to a problem? Please describe. Uninstalling DLSS swapper deletes all files in the install folder, even if unrelated to the DLSS software. If you have files in the install folder (like game lists) or accidentally install DLSS swapper in a parent directory, there is no way to uninstall it without also removing everything else in that folder.

Describe the solution you'd like The DLSS swapper software should have context of what files are created by it during the installation and use of the software and only remove those files.

beeradmoore commented 9 months ago

As of v1.0.4 it does have context aware uninstall. Is this not working as expected or?

jigmcgalliger commented 9 months ago

I was fully up to date (updated 3 weeks ago). It deleted everything within the install folder (just some custom text files with my ideal versions to games, but could be worse if installed in a folder with other files).

Unfortunately, I cannot confirm why it behaved the way it did after the fact.

beeradmoore commented 9 months ago

It did exactly that to another user which is why we did multiple updates to both install path validation and uninstall scripts.

They changed the install path to E:\Games\ and they (rightfully) thought it would install to E:\Games\DLSS Swapper. Apparently this isn't how many installers work, us included 💀

So system was updated so if you select a path that doesn't contain the letters "dlss" it will assume you want to append "DLSS Swapper"

On top of that when it installs it builds a list of files in uninstall.dat and so when it uninstalls it will only remove those. If you add other files to your directory the install folder (eg. E:\Games\DLSS Swapper) wont be removed and only the installed files should remain.

Is it possible the updater didnt get you to 1.0.4 so you still had the version with the issues or do you recall installing 1.0.4? (There should be a log in %TEMP% for DLSS Swapper, in that it prints its version on launch.

If you don't think any of these are what happens I'll go do more testing on upgrading and see if I can replicate that behaviour to improve it for the next release.

I'm very sorry you lost data, I 100% want to do all I can to prevent that happening to anyone again because I know I wouldn't enjoy it if it were me