Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG] RTSS preventing DLSS Swapper from starting #142

Closed
KleKwi opened this issue Jul 4, 2023 · 22 comments
Closed

[BUG] RTSS preventing DLSS Swapper from starting #142

KleKwi opened this issue Jul 4, 2023 · 22 comments
Assignees
Labels
bug Something isn't working

Comments

@KleKwi
Copy link

KleKwi commented Jul 4, 2023

Describe the bug
can not startup

To Reproduce
Steps to reproduce the behavior:

  1. double-click DLSS Swapper.exe

Expected behavior
startup, has graphic interface

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

Additional context
seems like it startup, then quit, but has no graphic interface and no warning.

crashdump:
DLSS Swapper.exe.28920.dmp.zip

@KleKwi KleKwi added the bug Something isn't working label Jul 4, 2023
@beeradmoore
Copy link
Owner

beeradmoore commented Jul 4, 2023

Hey @KleKwi,
Is this with the installer version or the portable version? Also could you let me know what version it is you are trying to use.

I'll look into the dump file soon.

EDIT: I opened the dump and can see the this was portable v1.0.2.
Inside the portable folder there should be a temp folder, did that get created and did any logs get output in there?

@KleKwi
Copy link
Author

KleKwi commented Jul 5, 2023

@beeradmoore portable version 1.0.2, no temp folder.

@beeradmoore
Copy link
Owner

Just double checked, 'temp' should be in the 'StoredData' folder which is in the root folder, not in the root folder itself.

Any luck with that?

@KleKwi
Copy link
Author

KleKwi commented Jul 5, 2023

@beeradmoore no, StoredData only has json folder.

@beeradmoore
Copy link
Owner

Thanks for checking.

Just to confirm, v1.0 portable worked fine?

I think the problem is with an underlying framework that I updated. If that is the case I'll downgrade it and release another update. We don't need to be on the latest, it's just nice.

I wish I could replicate the issue here though so I could pin down what version off the framework broke.

Is there anything about your system that may be fairly unique? Running in non-English, using win10 home, using some FPS overlay that maybe is causing it grief, 240hz monitor, or any else that possibly is out of the norm?

@KleKwi
Copy link
Author

KleKwi commented Jul 5, 2023

@beeradmoore
1.0.0 is fine.
Windows 11 22H2 22631.1972
Language is Chinese
using RTSS
90hz monitor

Oh, I found why, I quit RTSS, then dlss swapper can start.

@beeradmoore
Copy link
Owner

Interesting. I have RTSS, I'll have to dig around with settings and see if I can replicate.

Had you changed any of the hooks from stock?

@KleKwi
Copy link
Author

KleKwi commented Jul 6, 2023

Interesting. I have RTSS, I'll have to dig around with settings and see if I can replicate.

Had you changed any of the hooks from stock?

Didn't change anything. You may try different settings, see what will happen.

@WhyFin
Copy link

WhyFin commented Jul 7, 2023

I have the same issue with the non-portable installer. Setting the "Application detection level" to "None" within RTSS allows the DLSS Swapper.exe to launch, otherwise it will not.

@Kooooolah
Copy link

LOL, v1.0.3 either protable and installation won't work with RTSS

@beeradmoore
Copy link
Owner

beeradmoore commented Jul 8, 2023

I've been trying all sorts of settings but am struggling to replicate it here so I can report it up the chain and find the last stable version of underlying framework causing the problem 😅

Edit: everyone else using Chinese windows language, or using other?

Edit 2: I have now tried 3 PCs (1 x Win10, 2 x Win11 with a combo of 2 x Stock RTSS, 1 x Possibly modified RTSS settings). I have not tried a computer with multiple displays a computer in another language other than English (AU). I am also using the latest RTSS v7.3.4. Aside from testing those two does anyone have any idea of why their system may be different than mine so I can try replicate the problem?

@KleKwi
Copy link
Author

KleKwi commented Jul 9, 2023

I've been trying all sorts of settings but am struggling to replicate it here so I can report it up the chain and find the last stable version of underlying framework causing the problem 😅

Edit: everyone else using Chinese windows language, or using other?

I'm using Chinese windows language.RTSS Application detection level to low, dlss swapper can not start, setting to None is fine.

Edit: I can replicate in Windows 11 22H2 22631.1972, but not in 22621.1702, maybe it's a system issue. @WhyFin @Kooooolah
What's your system?

image

@beeradmoore
Copy link
Owner

I was going to ask if people were using an AMD or nVidia GPU, but considering this is DLSS Swapper it's very likely its nVidia 😂

I put my display language into simplified Chinese, rebooted and then ran DLSS Swapper while RTSS was running and it started fine. I also have the same RTSS settings and version as you have in the screenshot.

I may have to just make multiple versions of portable where I step through the different version numbers of the underlying framework and just ask if you can try each one and let me know where it dies and where it works.

@beeradmoore beeradmoore changed the title [BUG] won't startup [BUG] RTSS preventing DLSS Swapper from starting Jul 9, 2023
@beeradmoore beeradmoore self-assigned this Jul 9, 2023
@beeradmoore
Copy link
Owner

beeradmoore commented Jul 9, 2023

@KleKwi for reference my 3 test machines were:

  • Win11 22H2 23466.1001 (insider build)
  • Win11 22H2 22621.1928 (ROG Ally)
  • Win10 22H2 19045.3155

I have created a portable build of DLSS Swapper which goes from 1.0.2.1 through to 1.0.2.7. Each step of these versions contains an update to the framework that I think is responsible (WindowsAppSDK). 1.0.2.1 matches what 1.0.0.0 has and 1.0.2.7 matches what is in 1.0.2.0 has.

When you have time could you remove the RTSS application detection level changes for DLSS Swapper and then try 1.0.2.1 (hopefully it works) and then go through the versions until it stops working. If they all work then I don't know what to do 😅, but if we can confirm what version breaks I can revert to the version before that and release DLSS Swapper 1.0.3 and report the problem version up stream so hopefully Microsoft can fix it.

DLSS Swapper Version WindowsAppSDK Version
1.0.2.1 1.2.221209.1
1.0.2.2 1.2.230118.102
1.0.2.3 1.2.230217.4
1.0.2.4 1.2.230313.1
1.0.2.5 1.3.230331000
1.0.2.6 1.3.230502000
1.0.2.7 1.3.230602002

EDIT 1: @KleKwi , you mentioned two PCs but not being able to replicate on both. They both using the same nVidia driver version and both the same version of RTSS? I wonder about driver version incase there is something in there that changes the hook for RTSS. My Win10 and Win11 machine are both running 536.40. The third machine is an ROG Ally so no nVidia drivers.

@KleKwi
Copy link
Author

KleKwi commented Jul 9, 2023

@beeradmoore tow machine's driver and RTSS version is the same, I wiil try the versions you provided.

@KleKwi
Copy link
Author

KleKwi commented Jul 9, 2023

@beeradmoore
I'm testing on Windows 11 22H2 22621.1702, I lowered my system version, so I can not test on Windows 11 22H2 22631.1972.
Every version you provided is ok, with or without RTSS. This is odd 😅. Other people has this issue could help testing. @WhyFin @Kooooolah

DLSS Swapper Version With RTSS level low With RTSS level None
1.0.2.1 ok ok
1.0.2.2 ok ok
1.0.2.3 ok ok
1.0.2.4 ok ok
1.0.2.5 ok ok
1.0.2.6 ok ok
1.0.2.7 ok ok

@WhyFin
Copy link

WhyFin commented Jul 9, 2023

Windows 11 Pro 22H2 22621.1848

DLSS Swapper Version Launch with RTSS enabled
1.0.2.1 pass
1.0.2.2 pass
1.0.2.3 fail
1.0.2.4 fail
1.0.2.5 fail
1.0.2.6 fail
1.0.2.7 fail

@beeradmoore
Copy link
Owner

beeradmoore commented Jul 9, 2023

Hmmm...

Being able to narrow it down to RTSS I can see multiple issues filed about it over in the WindowsAppSDK or related repositories:

From the above info the last good version of WindowsAppSDK came out Jan 26 2023, the failing version came out in Feb 23 2023. Neither of these align great with the above timeline of people originally reporting issues. It sounds like this has been reported to both MS and RTSS teams. In fact the first things in the RTSS 7.3.4 changelog are

Improved hook engine:

  • Added WinUI3 runtime libraries to injection ignore triggers list
  • Added 64-bit VK Play overlay library to the list of trigger modules for delayed injection engine
  • Now injection ignore triggers list can specify modules, dynamically loaded by hooked application during runtime. This feature can be used to the exclude applications using delayed load of WPF/WinUI3 runtimes (e.g. Microsoft Power Toys)

(for the above, WinUI3 is WindowsAppSDK)

I was hoping there was a specific version that had a specific change that was obviously the problem so we could point to and wait until that is released so we can update again to the latest WindowsAppSDK, but that doesn't appear to be the case.

I think the best course of action will be to try a pinned topic of "DLSS Swapper won't launch/crashes on launch" with some helpful tips like "Set DLSS Swapper.exe to ignored in RTSS" and other info on how to get log files if they are generated. Pretty much how lively handles it here.

EDIT 1: Thinking about why we can't see concrete numbers of X version is good Y version is bad, it could be down to the system and how RTSS is running. If there is a specific time limit that it needs to try hook or something it could be causing different results on different runs which then may mean the problem is not related to the underlying WindowsAppSDK version and as to why its so hard to replicate.

@JXPCrab
Copy link

JXPCrab commented Aug 9, 2023

I have same issue with Windows 10 Pro 22H2 19045.3324

DLSS Swapper v 1.0.2.1 - Pass
DLSS Swapper v 1.0.2.2 - Pass (longer loading time)

Other version - Fail

@markishome359
Copy link

Weird, getting this on my machine as well, so I'm glad I found this thread.

English, USA
Windows 10 Pro 22H2 19045.3570
Windows Feature Experience Pack 1000.19052.1000.0

RTSS 7.3.2 Beta 2

All application detection levels block DLSS Swapper from launching for installer versions 1.0.2.0 and 1.0.3.1.

@beeradmoore
Copy link
Owner

Thanks for the bump, reminded me to go and look into a thread I commented on Guru3D forum about RTSS hooking apps it shouldn't.

Unwinder (developer of RTSS) replied and has added DLSS Swapper to the built in exclusion list. I just checked and can see it myself in RTSS 7.3.5 Beta 5 (it maybe have been in earlier betas but I can't see downloads/release notes for those).

I should also be able to add something to DLSS Swapper to prevent it getting hooked for those using older versions of RTSS (looking at you @markishome359 😅), leaving that code below to remember what it is,

// extern "C"
// {
// __declspec(dllexport) DWORD RTSSHooksCompatibility = 0x00000000;
// }

@beeradmoore
Copy link
Owner

Another update to this. Code has been written to ignore DLSS Swapper for all versions of RTSS, however it can't actually be used until WindowsAppSDK supports full native ahead-of-time (NativeAOT) compilation, which requires CsWinRT to also support it first.

So someday it will be ok, today is not that day.

The workaround to this problem is:

  • Use RTSS 7.3.5 beta 5 (or higher)
  • Add DLSS Swapper exclusion in RTSS
  • Add the exclusion file added in 7.3.5 beta 5 manually into the file C:\Program Files (x86)\RivaTuner Statistics Server\ProfileTemplates\DLSS Swapper.exe.cfg with the data
[Hooking]
EnableHooking		= 0

Closing this issue for now. Thanks everyone for the help getting to this point.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

6 participants