The problem is, these CTD “EVENTS” do not really tell very much about what is going on.
Even a full CTD “REPORT” like the 0ne below, while providing much more information, is not oreally sufficient.
This is a CTD, cause by plugging in a Particular Thrustmaster FFB USB Joystick, that MSFS is “having an issue with”.
The report clearly show what instruction is causing the issue, in which exact module, but without a symbol library and the source, knowing exactly in what context and where in the code this took place is not easy !!
If this (100% repeatable CTD) had been caused when the software was running in a debugger at ASOBO, the problem would be identifiable and possibly fixed quicker than it has taken me to type this post.
============================================================
Microsoft (R) Windows Debugger Version 10.0.21306.1007 AMD64
Copyright (c) Microsoft Corporation. All rights reserved.
Loading Dump File [C:\Users\ms\AppData\Local\CrashDumps\FlightSimulator.exe.13512.dmp]
User Mini Dump File: Only registers, stack and portions of memory are available
************* Path validation summary **************
Response Time (ms) Location
Deferred srv*
Symbol search path is: srv*
Executable search path is:
Windows 10 Version 19042 MP (8 procs) Free x64
Product: WinNt, suite: SingleUserTS Personal
Edition build lab: 19041.1.amd64fre.vb_release.191206-1406
Machine Name:
Debug session time: Wed Apr 21 18:53:02.000 2021 (UTC - 4:00)
System Uptime: not available
Process Uptime: 0 days 0:25:53.000
…
…
…
…
Loading unloaded module list
…
This dump file has an exception of interest stored in it.
The stored exception information can be accessed via .ecxr.
(34c8.39f8): Access violation - code c0000005 (first/second chance not available)
For analysis of this file, run !analyze -v
ntdll!NtWaitForMultipleObjects+0x14:
00007ffd`cff4d874 c3 ret
0:095> !analyze -v
Exception Analysis
*** WARNING: Unable to verify timestamp for FlightSimulator.exe
*** WARNING: Unable to verify checksum for WwiseLibPCx64P.dll
*** WARNING: Unable to verify checksum for WTF.dll
*** WARNING: Unable to verify checksum for CoherentUIGT.dll
*** WARNING: Unable to verify checksum for XPlatCppWindows.dll
*** WARNING: Unable to verify timestamp for xgameruntime.dll
KEY_VALUES_STRING: 1
Key : AV.Fault
Value: Read
Key : Analysis.CPU.mSec
Value: 6452
Key : Analysis.DebugAnalysisManager
Value: Create
Key : Analysis.Elapsed.mSec
Value: 16588
Key : Analysis.Init.CPU.mSec
Value: 218
Key : Analysis.Init.Elapsed.mSec
Value: 36929
Key : Analysis.Memory.CommitPeak.Mb
Value: 314
Key : Timeline.Process.Start.DeltaSec
Value: 1553
Key : WER.OS.Branch
Value: vb_release
Key : WER.OS.Timestamp
Value: 2019-12-06T14:06:00Z
Key : WER.OS.Version
Value: 10.0.19041.1
Key : WER.Process.Version
Value: 3.3.39.0
NTGLOBALFLAG: 0
PROCESS_BAM_CURRENT_THROTTLED: 0
PROCESS_BAM_PREVIOUS_THROTTLED: 0
APPLICATION_VERIFIER_FLAGS: 0
CONTEXT: (.ecxr)
rax=0000000000000000 rbx=0000020d52f2b3f0 rcx=00000000000010e0
rdx=00000027ffffffd8 rsi=0000000000000009 rdi=0000020cda075dc0
rip=00007ffdb1fc6805 rsp=000000e45380eee0 rbp=0000000000000000
r8=00000232b1c9ffd8 r9=0000000000000000 r10=0000000000000000
r11=0000000000000000 r12=0000000000000000 r13=0000000000000000
r14=0000000000000000 r15=0000000000000000
iopl=0 nv up ei pl nz na po nc
cs=0033 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00010206
pid!PID_ReadComplete+0x185:
00007ffdb1fc6805 428b440138 mov eax,dword ptr [rcx+r8+38h] ds:00000232
b1ca10f0=???
Resetting default scope
EXCEPTION_RECORD: (.exr -1)
ExceptionAddress: 00007ffdb1fc6805 (pid!PID_ReadComplete+0x0000000000000185)
ExceptionCode: c0000005 (Access violation)
ExceptionFlags: 00000000
NumberParameters: 2
Parameter[0]: 0000000000000000
Parameter[1]: 00000232b1ca10f0
Attempt to read from address 00000232b1ca10f0
PROCESS_NAME: FlightSimulator.exe
READ_ADDRESS: 00000232b1ca10f0
ERROR_CODE: (NTSTATUS) 0xc0000005 - The instruction at 0x%p referenced memory at 0x%p. The memory could not be %s.
EXCEPTION_CODE_STR: c0000005
EXCEPTION_PARAMETER1: 0000000000000000
EXCEPTION_PARAMETER2: 00000232b1ca10f0
STACK_TEXT:
000000e45380eee0 00007ffd
cff50a4e : 0000020d52f2b3f0 00000000
00000000 0000000000000000 00000000
00000000 : pid!PID_ReadComplete+0x185
000000e45380f150 00007ffd
cde8a104 : 00007ffdce3d078e 0000020d
52f2b3f0 0000000000000000 00000000
00000020 : ntdll!KiUserApcDispatch+0x2e
000000e45380f688 00007ffd
ce3d078e : 0000020d52f2b3f0 00000000
00000000 0000000000000020 00000000
00000000 : win32u!NtUserMsgWaitForMultipleObjectsEx+0x14
000000e45380f690 00007ffd
b1fc6a67 : 0000000000000000 00000000
00000000 0000000000000000 00000000
00000000 : user32!RealMsgWaitForMultipleObjectsEx+0x1e
000000e45380f6d0 00007ffd
cf857034 : 0000000000000000 00000000
00000000 0000000000000000 00000000
00000000 : pid!PID_ThreadProc+0x87
000000e45380f750 00007ffd
cff02651 : 0000000000000000 00000000
00000000 0000000000000000 00000000
00000000 : kernel32!BaseThreadInitThunk+0x14
000000e45380f780 00000000
00000000 : 0000000000000000 00000000
00000000 0000000000000000 00000000
00000000 : ntdll!RtlUserThreadStart+0x21
SYMBOL_NAME: pid!PID_ReadComplete+185
MODULE_NAME: pid
IMAGE_NAME: pid.dll
STACK_COMMAND: ~95s ; .ecxr ; kb
FAILURE_BUCKET_ID: INVALID_POINTER_READ_c0000005_pid.dll!PID_ReadComplete
OS_VERSION: 10.0.19041.1
BUILDLAB_STR: vb_release
OSPLATFORM_TYPE: x64
OSNAME: Windows 10
IMAGE_VERSION: 10.0.19041.1
FAILURE_ID_HASH: {843d278a-8462-05da-6394-aaca8615d790}
Followup: MachineOwner
0:095> .exr -1
ExceptionAddress: 00007ffdb1fc6805 (pid!PID_ReadComplete+0x0000000000000185)
ExceptionCode: c0000005 (Access violation)
ExceptionFlags: 00000000
NumberParameters: 2
Parameter[0]: 0000000000000000
Parameter[1]: 00000232b1ca10f0
Attempt to read from address 00000232b1ca10f0