GPUs with 'different' PNP ID crashes with IndexOutOfRangeException
harjeevan opened this issue · comments
Running the program after installing .NET 8.0.6 x86 is throwing an error.
Retrieving GPU information . . . Unhandled exception. System.IndexOutOfRangeException: Index was outside the bounds of the array. at TinyNvidiaUpdateChecker.MainConsole.GetDriverMetadata() in C:\Users\Samuel\Documents\GitHub\TinyNvidiaUpdateChecker\TinyNvidiaUpdateChecker\MainConsole.cs:line 422 at TinyNvidiaUpdateChecker.MainConsole.Main(String[] args) in C:\Users\Samuel\Documents\GitHub\TinyNvidiaUpdateChecker\TinyNvidiaUpdateChecker\MainConsole.cs:line 151
I'm on Win 11 Pro 23H2 22631.3672. I'm trying to run the newest version (1.18.1)
Same problem for me on Win 10 Pro 22H2 19045.4412
Hi I will investigate this issue. Can you show a screenshot of your GPU in device Manager?
Good. Is that your only GPU?
I have 1 Nvidia GPU, an RTX 4090, however, there are 2 more in device manager. (AMD Radeon iGPU from my 7900x and Virtual Desktop Monitor from Virtual Desktop)
Do you need the device instance path?
Edit: I have also tried with both non-nvidia display adaptors disabled. This did not fix the issue.
Or wait do this instead:
Get-CIMInstance -Query "SELECT Name, Caption, PNPDeviceID from Win32_VideoController"
run this in PowerShell and post the output
Here's both
display.txt
Thanks, yes I found the issue. The virtual driver "Virtual Desktop Monitor" PNP Device ID is ROOT\DISPLAY\0000
. I'll work on a fix for this
-del-
please try this dev build
same error, different line
System.IndexOutOfRangeException: Index was outside the bounds of the array. at TinyNvidiaUpdateChecker.MainConsole.GetDriverMetadata() in C:\Users\Samuel\Documents\GitHub\TinyNvidiaUpdateChecker\TinyNvidiaUpdateChecker\MainConsole.cs:line 388 at TinyNvidiaUpdateChecker.MainConsole.Main(String[] args) in C:\Users\Samuel\Documents\GitHub\TinyNvidiaUpdateChecker\TinyNvidiaUpdateChecker\MainConsole.cs:line 157
:-del-
ok please try this one
works for me
What? I didn't change anything I just added more debug stuff
Yeah, I've downloaded both and run them in powershell (non-admin)
PS C:\Users\Harjeevan\Downloads> & '.\TinyNvidiaUpdateChecker v1.18.2 dev.exe'
TinyNvidiaUpdateChecker v1.18.1
Verifying internet connection . . . OK!
Searching for Update . . . OK!
Retrieving GPU information . . . Unhandled exception. System.IndexOutOfRangeException: Index was outside the bounds of the array.
at TinyNvidiaUpdateChecker.MainConsole.GetDriverMetadata() in C:\Users\Samuel\Documents\GitHub\TinyNvidiaUpdateChecker\TinyNvidiaUpdateChecker\MainConsole.cs:line 388
at TinyNvidiaUpdateChecker.MainConsole.Main(String[] args) in C:\Users\Samuel\Documents\GitHub\TinyNvidiaUpdateChecker\TinyNvidiaUpdateChecker\MainConsole.cs:line 157
PS C:\Users\Harjeevan\Downloads> & '.\TinyNvidiaUpdateChecker v1.18.2 dev 2.exe'
TinyNvidiaUpdateChecker v1.18.1
Verifying internet connection . . . OK!
Searching for Update . . . OK!
Retrieving GPU information . . . OK!
There is no new GPU driver available, you are up to date.
Press any key to exit...
I've run each multiple times to verify, dev 2 isn't giving any errors whilst dev is....
good luck 😂
Wait perhaps something went wrong. Please try this version again:-del-
works too;
TinyNvidiaUpdateChecker v1.18.1
Verifying internet connection . . . OK!
Searching for Update . . . OK!
Retrieving GPU information . . . Ignoring weird device: ROOT\DISPLAY\0000
OK!
There is no new GPU driver available, you are up to date.
Press any key to exit...
Exactly. So dev 2 was essentially dev 1 but I accidently sent you the wrong exe woops.
Thanks for your help v1.18.2 will be released shortly