AnsweredAssumed Answered

D3D11: Removing Device when use ArcGIS Runtime for .NET

Question asked by alexeynikitenko1927 on Oct 14, 2018
Latest reply on Oct 15, 2018 by mnielsen-esristaff

I am using ArcGIS Runtime SDK for .NET in WPF Application. Recently app start having an error: app die without any messages and log records. That error appears from 1 to 12 hours from application start. 

 More often that error appears in moment of RDP connection to my developer machine (but not always).


I decided to debug my app with WinDbg and I got this traceback:


D3D11: Removing Device.
(2d9c.1730): C++ EH exception - code e06d7363 (first chance)
(2d9c.1730): C++ EH exception - code e06d7363 (first chance)
(2d9c.1730): C++ EH exception - code e06d7363 (first chance)
(2d9c.1730): C++ EH exception - code e06d7363 (first chance)
(2d9c.1730): C++ EH exception - code e06d7363 (first chance)
(2d9c.1730): C++ EH exception - code e06d7363 (!!! second chance !!!)
eax=0e7eeba8 ebx=0e7eec5c ecx=00000003 edx=00000000 esi=5d2914a8 edi=67ce57c4
eip=779a17d2 esp=0e7eeba8 ebp=0e7eec04 iopl=0 nv up ei pl nz ac po nc
cs=0023 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00000212
779a17d2 8b4c2454 mov ecx,dword ptr [esp+54h] ss:002b:0e7eebfc=d9bf5d37
0:046> k
# ChildEBP RetAddr
00 0e7eec04 5d294a25 KERNELBASE!RaiseException+0x62
*** WARNING: Unable to verify checksum for C:\VS\Notify\Notify\bin\Release\arcgisruntime100.2\client32\RuntimeCoreNet.dll
*** ERROR: Symbol file could not be found. Defaulted to export symbols for C:\VS\Notify\Notify\bin\Release\arcgisruntime100.2\client32\RuntimeCoreNet.dll -
01 0e7eec48 655603d5 VCRUNTIME140!_CxxThrowException+0x65 [f:\dd\vctools\crt\vcruntime\src\eh\throw.cpp @ 131]
WARNING: Stack unwind information not available. Following frames may be wrong.
02 0e7eec68 6555c2d3 RuntimeCoreNet!GDALDataset::GetInternalHandle+0x105
03 0e7eecd8 655b479d RuntimeCoreNet+0xcc2d3
04 0e7eed00 65660b0f RuntimeCoreNet!CoreRT_DxErrorInfo_getInfoAndDestroy+0x37fd
05 0e7efb84 655b144b RuntimeCoreNet!GDALRasterBand::GetUnitType+0xba0f
06 0e7efbe0 655cd22d RuntimeCoreNet!CoreRT_DxErrorInfo_getInfoAndDestroy+0x4ab
07 0e7efbec 65ca5cf9 RuntimeCoreNet!kdu_get_altivec_exists+0x3add
08 0e7efc9c 65ffa88f RuntimeCoreNet!GDALDriverManager::GetHome+0x1c4069
09 0e7efcc4 669d44a6 RuntimeCoreNet!HFADataset::GetGCPs+0x4cedf
0a 0e7efdf8 669d99e0 RuntimeCoreNet!kdu_block_decoder::kdu_block_decoder+0x12cad6
0b 0e7efe08 66a9a12c RuntimeCoreNet!kdu_block_decoder::kdu_block_decoder+0x132010
0c 0e7efe80 6586fed6 RuntimeCoreNet!kdu_block_decoder::kdu_block_decoder+0x1f275c
0d 0e7efe90 65870940 RuntimeCoreNet!GDALRasterBlock::GetBand+0x10006
0e 0e7efeb0 655b302a RuntimeCoreNet!GDALRasterBlock::GetBand+0x10a70
0f 0e7efeb8 77bbe87f RuntimeCoreNet!CoreRT_DxErrorInfo_getInfoAndDestroy+0x208a
10 0e7efef4 76768484 ucrtbase!thread_start<unsigned int (__stdcall*)(void *)>+0x3f
11 0e7eff08 77e7305a KERNEL32!BaseThreadInitThunk+0x24
12 0e7eff50 77e7302a ntdll!__RtlUserThreadStart+0x2f
13 0e7eff60 00000000 ntdll!_RtlUserThreadStart+0x1b


Then I read some forums about error D3D11: Removing Device. There are many ways to handle this exception from application that use a DirectX, but I don't use it directly and I don't know how to handle this exception.