I installed latest driver (531.18) through GeForce Experience. I develop graphics applications using DirectX 11. I am using Visual Studio 17.5.1. When calling D3D11CreateDevice using a non-null IDXGIAdapter, found by adapter enumeration, and requesting D3D_FEATURE_LEVEL_11_1, a POCO exception is thrown. The call stack shows I am in the NVIDIA driver (nvwgf2umx.dll) and it is calling a function in MessageBus.dll. If I continue execution I get a second POCO exception. Continuing execution, my applications run but on exit when I release the ID3D11Device object, another POCO exception occurs. My code has been working for many years, so this exception was unexpected. Is the use of POCO new to drivers starting with 531.18 ? I am running Windows 11 (latest) with an NVIDIA GeForce RTX 2080 SUPER.
Same exception here. This is with an RTX 4080 16GB. My Visual Studio version is 2022 however. I also have an AMD CPU on this box (3900X) if that’s of any relevance. Windows 11 also.
Am now going to try the studio drivers.
EDIT: Current studio drivers are of course fine being an earlier iteration (528.49).
Hello to both of you @deberly and @RobinsonUK, welcome back to the NVIDIA developer forums.
POCO has been part of the drivers for a while now, this sounds more like a possible regression to me, just not clear where.
@deberly would you mind sharing a call stack of the first occurrence of the exception if that is possible?
Ideally i would ask for a minimal repro app, but maybe engineering can repro already based on this information.
Thanks!
One addendum, can you rule out that this was related to some other update that coincided? Like Windows or VS updates?
Thanks!
I will make an attempt to write a minimal repro. However, here is a link to a screen capture with the call stack and the code window. The mFlags input to D3D11CreateDevice is 0. POCONotFoundException
I do not believe I will be able to rollback the Windows or Visual Studio updates on my main dev machine. I have another machine on which I can install the 531.18 driver. That machine has Windows 10 and not the latest Visual Studio. I will report the results with the minimal repro.
A simple repro is provided by the project in this zip file: POCONotFoundException.zip
I am running withWindows 11 Pro 22H2 OS build 22621.1265. I am using MSVS 2022 version 17.5.1. The project configuration has “Windows SDK Version: 10.0 (latest installed version)”, which on my machine is 10.0.22621.0.
The MSVS 2022 default Exception Settings, C++ Exceptions, is to have “<All C++ Exceptions not in this list>” unchecked. In order for the exception dialogs to pop up, you need to check this item. I have comments in the code indicating where the exceptions occur.
I have run into the same issue with a visual studio 2019 calling D3D12createDevice throws the poco::NotFoundException
Thank you @codehammer and also welcome to the NVIDIA developer forums!
All the details are forwarded, if I get status updates from engineering, I will share if I receive public information.
Thanks!
Exception thrown at 0x00007FFA0BC24B59 in DirectX11Test.exe: Microsoft C++ exception: Poco::NotFoundException at memory location 0x000000A28A2F15A0
531.61 st’ll not running on win10 VS2019 x64
I’m working on a project that involves using the D3D11CreateDevice function, but I’m running into an issue. When I call the function, I get a Poco::NotFoundException. I’m not sure what’s causing this exception, and I’d appreciate any help or suggestions on how to resolve it.
For what it’s worth, compiling and running the Godot game engine using VS2022 results in these errors also. I created an issue on the Godot GH tracker before I realized it seemed more driver-related than Godot related.
You can find more details here: Godot always throws Poco::NotFoundException · Issue #76707 · godotengine/godot · GitHub
Poco::NotFoundException in VS 2022. Its not godot problem.
The Poco exception is still thrown as of NVIDIA GeForce driver 532.03. I suppose a fix for this is low priority. For other folks, here is the workaround when using Microsoft Visual Studio. I should have thought of this previously…
This assumes you have checked the box in MSVS Exception Settings window that says “<All C++ Exceptions not in this list>”. If you do not have this checked, set a breakpoint at a line of code before the call to D3D11CreateDevice and run to the breakpoint. Then check the aforementioned box. Continue the execution and an exception dialog is launched when the call is made to D3D11CreateDevice. That dialog has a box checked “Break when this exception type is thrown”. Uncheck the box. You will see a new item in the Exception Settings window under the “C++ Exceptions” that says “Poco::NotFoundException”. It is unchecked, which means the debugger will not stop execution for that particular exception.
This exception is still thrown in the latest driver 535.98 (release date: 2023.5.30).
It is not related to Godot engine, because it also happens in other engines - in my case in Ab3d.DXEngine (DirectX 11 rendering engine for .Net).
I am using Windows 10 with NVIDIA 3080 Ti.
This should be easy to reproduce. I do not understand how this is not fixed after 3 months!
Having the same exception thrown on teardown instead, with Vulkan
'MinCity.exe' (Win32): Unloaded 'C:\Windows\System32\dbghelp.dll'
Exception thrown at 0x00007FFBDF42CF19 in MinCity.exe: Microsoft C++ exception: Poco::NotFoundException at memory location 0x0000001FD7CF0810.
Exception thrown at 0x00007FFBDF42CF19 in MinCity.exe: Microsoft C++ exception: Poco::NotFoundException at memory location 0x0000001FD7CF0850.
Exception thrown at 0x00007FFBDF42CF19 in MinCity.exe: Microsoft C++ exception: Poco::NotFoundException at memory location 0x0000001FD7CFE2C0.
'MinCity.exe' (Win32): Unloaded 'C:\Windows\System32\DriverStore\FileRepository\nvmdsig.inf_amd64_d7c5287beb57dde4\Display.NvContainer\MessageBus.dll'
'MinCity.exe' (Win32): Unloaded 'C:\Windows\System32\DriverStore\FileRepository\nvmdsig.inf_amd64_d7c5287beb57dde4\nvwgf2umx.dll'
'MinCity.exe' (Win32): Unloaded 'C:\Windows\System32\DriverStore\FileRepository\nvmdsig.inf_amd64_d7c5287beb57dde4\nvldumdx.dll'
The program '[11968] MinCity.exe' has exited with code 0 (0x0).
Using Latest Studio driver 535.98
This is a recent regression in the driver, not exactly sure where in the driver.
I normally compile with exceptions and RTTI disabled, this exception did not produce a dialog on process termination and output to the MSVC output window, which I have pasted above. Was a release build running with debugger attached.
ping NVIDIA Driver Team?
I created an account just to complain about this error as well. In driver version 535.98 (the latest NVIDIA driver as of this post) this same exception appears with my GeForce RTX 4060 Laptop GPU. I even get this error in Microsoft’s own DirectX 12 sample programs! No errors appear if I choose to create the device with Intel’s integrated Xe GPU instead as an adapter in the same DirectX 12 program. This is entirely the fault of NVIDIA’s own drivers. I am immensely disappointed. NVIDIA has done nothing for over three months and multiple driver updates to fix such a prominent issue.
Thank you @qvindicator for joining the NVIDIA developer community, hopefully you find more reasons to be part of it.
Also to @abenedik a warm welcome.
I am aware this has been going on for a long time, but I hope you understand that I cannot share very much of the ongoing debugging process. I can only stress again that there are people working on this, trying to find a fix.
Thanks!
I use the visual studio 2019( Version 16.11.27) and my RTX 2026 with driver 536.23 , when I debug following code, the D3D12CeateDevice with throw the same exception.
if (SUCCEEDED(D3D12CreateDevice(adapter, D3D_FEATURE_LEVEL_11_0, __uuidof(ID3D12Device), nullptr)))
Here is the Debug log
'EngineTest.exe' (Win32): Loaded 'C:\Windows\System32\nvspcap64.dll'.
'EngineTest.exe' (Win32): Loaded 'C:\Windows\System32\profapi.dll'.
'EngineTest.exe' (Win32): Loaded 'C:\Windows\System32\ntmarta.dll'.
'EngineTest.exe' (Win32): Loaded 'C:\Windows\System32\DriverStore\FileRepository\nvlti.inf_amd64_894a55cc594635f0\Display.NvContainer\MessageBus.dll'.
'EngineTest.exe' (Win32): Loaded 'C:\Windows\System32\ws2_32.dll'.
'EngineTest.exe' (Win32): Loaded 'C:\Windows\System32\IPHLPAPI.DLL'.
Exception thrown at 0x00007FFE7F62CF19 in EngineTest.exe: Microsoft C++ exception: Poco::NotFoundException at memory location 0x0000009CC8EF0E50.
Exception thrown at 0x00007FFE7F62CF19 in EngineTest.exe: Microsoft C++ exception: Poco::NotFoundException at memory location 0x0000009CC8EF0E90.
'EngineTest.exe' (Win32): Loaded 'C:\Windows\System32\d3d12SDKLayers.dll'.
'EngineTest.exe' (Win32): Unloaded 'C:\Windows\System32\d3d12SDKLayers.dll'
The thread 0x16184 has exited with code 0 (0x0).
'EngineTest.exe' (Win32): Loaded 'C:\Windows\System32\nsi.dll'.
'EngineTest.exe' (Win32): Loaded 'C:\Windows\System32\dhcpcsvc.dll'.
Exception thrown at 0x00007FFE7F62CF19 in EngineTest.exe: Microsoft C++ exception: Poco::NotFoundException at memory location 0x0000009CC8EFC8A0.
The thread 0x13318 has exited with code 0 (0x0).
The thread 0x2fa0 has exited with code 0 (0x0).
'EngineTest.exe' (Win32): Unloaded 'C:\Windows\System32\ws2_32.dll'
'EngineTest.exe' (Win32): Unloaded 'C:\Windows\System32\DriverStore\FileRepository\nvlti.inf_amd64_894a55cc594635f0\Display.NvContainer\MessageBus.dll'
'EngineTest.exe' (Win32): Unloaded 'C:\Windows\System32\winmm.dll'
'EngineTest.exe' (Win32): Unloaded 'C:\Windows\System32\DriverStore\FileRepository\nvlti.inf_amd64_894a55cc594635f0\nvwgf2umx.dll'
'EngineTest.exe' (Win32): Unloaded 'C:\Windows\System32\DriverStore\FileRepository\nvlti.inf_amd64_894a55cc594635f0\nvldumdx.dll'
Anyone found the solution to this? do you just revert back to the drivers before this started happening? I am getting Poco::NotFoundException at memory location when calling
CD3DX12_ROOT_PARAMETER parameter1 = {};
parameter1.InitAsDescriptorTable(1, &CD3DX12_DESCRIPTOR_RANGE(D3D12_DESCRIPTOR_RANGE_TYPE_CBV, 1, 0));
And then
ThrowIfFailed(D3D12SerializeRootSignature(&descRootSignature, D3D_ROOT_SIGNATURE_VERSION_1, pSignature.GetAddressOf(), pError.GetAddressOf()));
throws the error Poco::NotFoundException. It works in debug, but not in release.
@cpyburn78 I installed 528.49 and no longer see the problem. I’m hoping they get this fixed for newer drivers soon.