In the logs of a sideloaded Windows Store App, I find the following exception:
Arg_ArgumentException --> System.ArgumentException: Arg_ArgumentException
at SharedLibrary!<BaseAddress>+0x3a13ad
at my-app!<BaseAddress>+0xf29d82h
at my-app!<BaseAddress>+0xf29cdc
at my-app!<BaseAddress>+0x10e0844
at my-app!<BaseAddress>+0x14fbe60
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at SharedLibrary!<BaseAddress>+0x502089
at System.Threading.ContextCallback.Invoke(Object state)
at SharedLibrary!<BaseAddress>+0x3e683c
To symbolicate the trace, I tried to utilize the WindowsDevCenterStacktraceSymbolicater and the StackParser of the corefx-tools along with the PDB of the app, which will change the trace to:
Arg_ArgumentException --> System.ArgumentException: Arg_ArgumentException
at SharedLibrary!COM+_Entry_Point+0x3a13ad
at my-app!COM+_Entry_Point+0xf29d82
at my-app!COM+_Entry_Point+0xf29cdc
at my-app!COM+_Entry_Point+0x10e0844
at my-app!COM+_Entry_Point+0x14fbe60
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at SharedLibrary!COM+_Entry_Point+0x502089
at System.Threading.ContextCallback.Invoke(Object state)
at SharedLibrary!COM+_Entry_Point+0x3e683c
Is there a way to resolve the COM+_Entry_Point
references in this scenario? How?
Instead of the PDB placed in the output folder of your app, use the PDB file placed in the ilc
subdirectory (which is way larger). With this PDB, the stack trace will properly be symbolicated using one of the tools mentioned above.