Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

An unhandled win32 exception occured in <Project_name>.vshost.exe

394 views
Skip to first unread message

Ante Maric

unread,
Jun 4, 2007, 3:05:55 AM6/4/07
to
Hi,

i have problem with debugging. Almost every time when my application
encounters an error "Visual Studio Just-In-Time Debugger" window pops up
with message : "An unhandled win32 exception occured in
<Project_name>.vshost.exe instead of breaking into the line of code that has
the error. Then i can choose between possible debuggers and if i click "yes"
to debug using selected debugger then new Visual Studio 2005 instance opens
to debug <project_name>.vshost.exe with error message "unable to attach to
the crashing process. a debbuger is already attached".

Please help!


Oleg Starodumov

unread,
Jun 4, 2007, 4:25:41 AM6/4/07
to

When you see the message, break into the already attached debugger (Debug | Break All).
What will be on the call stack of the thread that is displaying the message?

Also try the same with the hosting process disabled - will the behavior change?
(Project properties | Debug | "Enable the Visual Studio hosting process")

--
Oleg
[VC++ MVP http://www.debuginfo.com/]


Ante Maric

unread,
Jun 4, 2007, 8:36:09 AM6/4/07
to
When i break into the already attached debugger this is on the call stack:

[External Code]
> some_method(System.Windows.Forms.Button btn = {Text = Cannot evaluate
> expression because a native frame is on top of the call stack.}) Line 357
> + 0x1e bytes C#
some_method(int index = 1) Line 325 + 0x9 bytes C#
some_method(object sender = {System.Windows.Forms.TabControl},
System.EventArgs e = {System.EventArgs}) Line 221 + 0x9 bytes C#
[External Code]
Main() Line 21 + 0x1a bytes C#
[External Code]

With the hosting process disabled the behavior is the same.


"Oleg Starodumov" <com-dot-debuginfo-at-oleg> wrote in message
news:eFUl2Ho...@TK2MSFTNGP06.phx.gbl...

Oleg Starodumov

unread,
Jun 4, 2007, 11:01:06 AM6/4/07
to

We need to get the full call stack somehow, so that it would include
the .NET runtime functions, to guess what they are doing at the moment.
Try to get the call stack with "Just My Code" disabled
(Tools | Options | Debugging | General | "Enable Just My Code" - uncheck)

You can also try WinDbg and SOS (while the message is still displayed,
attach WinDbg to the same process in non-invasive mode and use SOS
to get call stacks). To attach WinDbg, use "File | Attach to Process" menu,
select the process in the list, and make sure "Noninvasive" checkbox
is checked. The output of the following commands would be interesting:

.symfix c:\symbols
.reload
.loadby sos mscorwks
!threads
kb
!clrstack
!dumpstack

If the default thread displayed by WinDbg is not the one that shows the message,
switch to the right one using "~1 s" command, where 1 should be replaced
with the zero-based index of the thread (e.g. try all threads starting with 0 index
and verify the call stack with !clrstack command, until you find the correct thread).
Then repeat the commands.

http://www.microsoft.com/whdc/devtools/debugging/installx86.mspx

Oleg


Ante Maric

unread,
Jun 5, 2007, 8:16:58 AM6/5/07
to
this is what i get with "Just my code disabled" :

--------------------------------------
[Managed to Native Transition]


> some_method(System.Windows.Forms.Button btn = {Text = Cannot evaluate

> expression because a native frame is on top of the call stack.}) Line 377
> + 0x1f bytes C#
some_method(string text = "50 x 50") Line 346 + 0x9 bytes C#


some_method(object sender = {System.Windows.Forms.TabControl},

System.EventArgs e = {System.EventArgs}) Line 233 + 0x3c bytes C#
System.Windows.Forms.dll!System.Windows.Forms.TabControl.OnSelectedIndexChanged(System.EventArgs
e) + 0x76 bytes
System.Windows.Forms.dll!System.Windows.Forms.TabControl.WmSelChange() +
0xd9 bytes
System.Windows.Forms.dll!System.Windows.Forms.TabControl.WndProc(ref
System.Windows.Forms.Message m = {System.Windows.Forms.Message}) + 0x129
bytes
System.Windows.Forms.dll!System.Windows.Forms.Control.ControlNativeWindow.OnMessage(ref
System.Windows.Forms.Message m) + 0xd bytes
System.Windows.Forms.dll!System.Windows.Forms.Control.ControlNativeWindow.WndProc(ref
System.Windows.Forms.Message m) + 0xd6 bytes
System.Windows.Forms.dll!System.Windows.Forms.NativeWindow.DebuggableCallback(System.IntPtr
hWnd, int msg = 8270, System.IntPtr wparam, System.IntPtr lparam) + 0x75
bytes
[Native to Managed Transition]
[Managed to Native Transition]
System.Windows.Forms.dll!System.Windows.Forms.Control.SendMessage(int msg,
System.IntPtr wparam, System.IntPtr lparam) + 0x3d bytes
System.Windows.Forms.dll!System.Windows.Forms.Control.ReflectMessageInternal(System.IntPtr
hWnd, ref System.Windows.Forms.Message m = {System.Windows.Forms.Message}) +
0x3e bytes
System.Windows.Forms.dll!System.Windows.Forms.Control.WmNotify(ref
System.Windows.Forms.Message m = {System.Windows.Forms.Message}) + 0x2e
bytes
System.Windows.Forms.dll!System.Windows.Forms.Control.WndProc(ref
System.Windows.Forms.Message m) + 0x6a6 bytes
System.Windows.Forms.dll!System.Windows.Forms.ScrollableControl.WndProc(ref
System.Windows.Forms.Message m) + 0x45 bytes
System.Windows.Forms.dll!System.Windows.Forms.Control.ControlNativeWindow.OnMessage(ref
System.Windows.Forms.Message m) + 0xd bytes
System.Windows.Forms.dll!System.Windows.Forms.Control.ControlNativeWindow.WndProc(ref
System.Windows.Forms.Message m) + 0xd6 bytes
System.Windows.Forms.dll!System.Windows.Forms.NativeWindow.DebuggableCallback(System.IntPtr
hWnd, int msg = 78, System.IntPtr wparam, System.IntPtr lparam) + 0x75 bytes
[Native to Managed Transition]
System.Windows.Forms.dll!System.Windows.Forms.NativeWindow.DefWndProc(ref
System.Windows.Forms.Message m = {System.Windows.Forms.Message}) + 0x94
bytes
System.Windows.Forms.dll!System.Windows.Forms.Control.DefWndProc(ref
System.Windows.Forms.Message m) + 0xc bytes
System.Windows.Forms.dll!System.Windows.Forms.Control.WmMouseDown(ref
System.Windows.Forms.Message m = {System.Windows.Forms.Message},
System.Windows.Forms.MouseButtons button = Left, int clicks = 1) + 0xf5
bytes
System.Windows.Forms.dll!System.Windows.Forms.Control.WndProc(ref
System.Windows.Forms.Message m) + 0x52d bytes
System.Windows.Forms.dll!System.Windows.Forms.TabControl.WndProc(ref
System.Windows.Forms.Message m) + 0x1f2 bytes
System.Windows.Forms.dll!System.Windows.Forms.Control.ControlNativeWindow.OnMessage(ref
System.Windows.Forms.Message m) + 0xd bytes
System.Windows.Forms.dll!System.Windows.Forms.Control.ControlNativeWindow.WndProc(ref
System.Windows.Forms.Message m) + 0xd6 bytes
System.Windows.Forms.dll!System.Windows.Forms.NativeWindow.DebuggableCallback(System.IntPtr
hWnd, int msg = 513, System.IntPtr wparam, System.IntPtr lparam) + 0x75
bytes
[Native to Managed Transition]
[Managed to Native Transition]
System.Windows.Forms.dll!System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(int
dwComponentID, int reason = -1, int pvLoopData = 0) + 0x2ea bytes
System.Windows.Forms.dll!System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(int
reason = -1, System.Windows.Forms.ApplicationContext context =
{System.Windows.Forms.ApplicationContext}) + 0x17d bytes
System.Windows.Forms.dll!System.Windows.Forms.Application.ThreadContext.RunMessageLoop(int
reason, System.Windows.Forms.ApplicationContext context) + 0x53 bytes
System.Windows.Forms.dll!System.Windows.Forms.Application.Run(System.Windows.Forms.Form
mainForm) + 0x2e bytes


Main() Line 21 + 0x1a bytes C#

[Native to Managed Transition]
[Managed to Native Transition]
mscorlib.dll!System.AppDomain.ExecuteAssembly(string assemblyFile,
System.Security.Policy.Evidence assemblySecurity, string[] args) + 0x32
bytes
Microsoft.VisualStudio.HostingProcess.Utilities.dll!Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
+ 0x2b bytes
mscorlib.dll!System.Threading.ThreadHelper.ThreadStart_Context(object
state) + 0x3b bytes
mscorlib.dll!System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext
executionContext, System.Threading.ContextCallback callback, object state) +
0x81 bytes
mscorlib.dll!System.Threading.ThreadHelper.ThreadStart() + 0x40 bytes
-----------------------------------------

I never worked with Windbg so i didn't figure it out how to check that
thread that is displayed by WinDbg is the one that shows the message?

this is what i get when i execute commands that you said (default thread
displayed) :

*** wait with pending attach
Symbol search path is:
SRV*c:\symbols*http://msdl.microsoft.com/download/symbols
Executable search path is:
WARNING: Process 3644 is not attached as a debuggee
The process can be examined but debug events will not be received
.........................................................................
Loading unloaded module list
....
(e3c.b18): Wake debugger - code 80000007 (first chance)
eax=00000000 ebx=0012f4cc ecx=00185c00 edx=0012f2e0 esi=00000000
edi=7ffd7000
eip=7c90eb94 esp=0012f4a4 ebp=0012f540 iopl=0 nv up ei pl zr na pe
nc
cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000
efl=00000246
ntdll!KiFastSystemCallRet:
7c90eb94 c3 ret
0:000> .symfix c:\symbols
0:000> .reload
Reloading current modules
..........................................................................
0:000> .loadby sos mscorwks
0:000> !threads
ThreadCount: 10
UnstartedThread: 0
BackgroundThread: 6
PendingThread: 0
DeadThread: 2
Hosted Runtime: no
PreEmptive GC Alloc Lock
ID OSID ThreadOBJ State GC Context Domain Count
APT Exception
0 1 b18 00185c00 201a228 Enabled 00000000:00000000 00149648 0
MTA
2 2 654 0018f340 b228 Enabled 00000000:00000000 00149648 0
MTA (Finalizer)
3 3 fc 001cec30 228 Enabled 00000000:00000000 00149648 0
Ukn
5 4 dfc 001d7c20 228 Enabled 00000000:00000000 00149648 0
Ukn
XXXX 5 0 001d9828 9820 Enabled 00000000:00000000 00149648 0
Ukn
XXXX 6 0 001e5bf8 9820 Enabled 00000000:00000000 00149648 0
MTA
6 7 b80 001e6fe0 180b228 Enabled 00000000:00000000 00149648 0
MTA (Threadpool Worker)
8 8 7ac 001f4d28 b028 Enabled 00000000:00000000 00149648 0
MTA
9 9 ff4 001e6698 8b228 Enabled 00000000:00000000 00149648 0
MTA
11 a afc 001fa558 7028 Enabled 01347500:01348ae4 00149648 0
STA System.NullReferenceException (013365d0)
0:000> kb
ChildEBP RetAddr Args to Child
0012f4a0 7c90e9ab 7c8094e2 00000001 0012f4cc ntdll!KiFastSystemCallRet
0012f4a4 7c8094e2 00000001 0012f4cc 00000001
ntdll!ZwWaitForMultipleObjects+0xc
0012f540 79f8ead4 00000001 0014554c 00000000
KERNEL32!WaitForMultipleObjectsEx+0x12c
0012f5a8 79f17522 00000001 0014554c 00000000
mscorwks!WaitForMultipleObjectsEx_SO_TOLERANT+0x6f
0012f5c8 79f17493 00000001 0014554c 00000000
mscorwks!Thread::DoAppropriateAptStateWait+0x3c
0012f64c 79f1732f 00000001 0014554c 00000000
mscorwks!Thread::DoAppropriateWaitWorker+0x144
0012f69c 79f8ea4d 00000001 0014554c 00000000
mscorwks!Thread::DoAppropriateWait+0x40
0012f6f8 79e77f50 ffffffff 00000001 00000000 mscorwks!CLREvent::WaitEx+0xf7
0012f708 79f99525 ffffffff 00000001 00000000 mscorwks!CLREvent::Wait+0x17
0012f788 7a0e2553 0014554c ffffffff 00000001
mscorwks!CLREventWaitWithTry+0x75
0012f7c4 79f95939 408ff416 00000000 00967480
mscorwks!ThreadStore::WaitForOtherThreads+0x74
0012f7f0 79f082c8 408ffbd2 00193888 00000200
mscorwks!Assembly::PrepareModuleForAssembly+0x71
0012fa48 79f0817e 00000000 408ff912 00000000
mscorwks!Assembly::ExecuteMainMethod+0xc1
0012ff18 79f07dc7 00400000 00000000 408ffc8e
mscorwks!SystemDomain::ExecuteMainMethod+0x398
0012ff68 79f05f61 00400000 408ffc56 00000000 mscorwks!ExecuteEXE+0x59
0012ffb0 79011b5f 0012f34c 79e70000 0012fff0 mscorwks!_CorExeMain+0x11b
0012ffc0 7c816fd7 00000000 0012f34c 7ffd7000 mscoree!_CorExeMain+0x2c
0012fff0 00000000 79011b2b 00000000 78746341 KERNEL32!BaseProcessStart+0x23
0:000> !clrstack
OS Thread Id: 0xb18 (0)
Failed to start stack walk: 80004005
0:000> !dumpstack
OS Thread Id: 0xb18 (0)
Current frame: ntdll!KiFastSystemCallRet
ChildEBP RetAddr Caller,Callee
0012f4a0 7c90e9ab ntdll!ZwWaitForMultipleObjects+0xc
0012f4a4 7c8094e2 KERNEL32!WaitForMultipleObjectsEx+0x12c, calling
ntdll!ZwWaitForMultipleObjects
0012f4e4 79e8da95 mscorwks!BaseWrapper<IMDInternalImport
*,FunctionBase<IMDInternalImport *,&DoNothing<IMDInternalImport
*>,&SafeComRelease<IMDInternalImport>,2>,0,&CompareDefault<IMDInternalImport
*>,2>::~BaseWrapper<IMDInternalImport *,FunctionBase<IMDInternalImport
*,&DoNothing<IMDInternalImport
*>,&SafeComRelease<IMDInternalImport>,2>,0,&CompareDefault<IMDInternalImport
*>,2>+0x2b, calling mscorwks!_EH_epilog3
0012f510 79e8da4b mscorwks!SafeComHolder<IMarshal,Wrapper<IMarshal
*,&DoNothing<IMarshal
*>,&SafeComRelease<IMarshal>,0,&CompareDefault<IMarshal *>,2>
>::~SafeComHolder<IMarshal,Wrapper<IMarshal *,&DoNothing<IMarshal
*>,&SafeComRelease<IMarshal>,0,&CompareDefault<IMarshal *>,2> >+0x1d,
calling mscorwks!_EH_epilog3
0012f540 79f8ead4 mscorwks!WaitForMultipleObjectsEx_SO_TOLERANT+0x6f,
calling KERNEL32!WaitForMultipleObjectsEx
0012f590 79f17565 mscorwks!Thread::GetFinalApartment+0x8d, calling
mscorwks!_EH_epilog3
0012f5a8 79f17522 mscorwks!Thread::DoAppropriateAptStateWait+0x3c, calling
mscorwks!WaitForMultipleObjectsEx_SO_TOLERANT
0012f5c8 79f17493 mscorwks!Thread::DoAppropriateWaitWorker+0x144, calling
mscorwks!Thread::DoAppropriateAptStateWait
0012f64c 79f1732f mscorwks!Thread::DoAppropriateWait+0x40, calling
mscorwks!Thread::DoAppropriateWaitWorker
0012f69c 79f8ea4d mscorwks!CLREvent::WaitEx+0xf7, calling
mscorwks!Thread::DoAppropriateWait
0012f6d8 79e71862 mscorwks!SaveLastErrorHolder::~SaveLastErrorHolder+0x14,
calling ntdll!RtlGetLastWin32Error
0012f6e0 79e74411 mscorwks!ClrFlsSetValue+0x57, calling mscorwks!_EH_epilog3
0012f6f8 79e77f50 mscorwks!CLREvent::Wait+0x17, calling
mscorwks!CLREvent::WaitEx
0012f708 79f99525 mscorwks!CLREventWaitWithTry+0x75, calling
mscorwks!CLREvent::Wait
0012f788 7a0e2553 mscorwks!ThreadStore::WaitForOtherThreads+0x74, calling
mscorwks!CLREventWaitWithTry
0012f7c4 79f95939 mscorwks!Assembly::PrepareModuleForAssembly+0x71, calling
mscorwks!ThreadStore::WaitForOtherThreads
0012f7f0 79f082c8 mscorwks!Assembly::ExecuteMainMethod+0xc1, calling
mscorwks!Assembly::PrepareModuleForAssembly+0x4c
0012f838 79e74753 mscorwks!CrstBase::Leave+0x96, calling
mscorwks!_EH_epilog3
0012f870 7c9105c8 ntdll!RtlpFreeToHeapLookaside+0x22, calling
ntdll!RtlpInterlockedPushEntrySList
0012f884 7c9105c8 ntdll!RtlpFreeToHeapLookaside+0x22, calling
ntdll!RtlpInterlockedPushEntrySList
0012f890 7c910551 ntdll!RtlFreeHeap+0x1e9, calling
ntdll!RtlpFreeToHeapLookaside
0012f898 7c91056d ntdll!RtlFreeHeap+0x647, calling ntdll!_SEH_epilog
0012f8bc 79e783e6 mscorwks!EEHeapFree+0xa5, calling mscorwks!_EH_epilog3
0012f8c0 79e7839d mscorwks!EEHeapFreeInProcessHeap+0x21, calling
mscorwks!EEHeapFree
0012f8d0 79e71862 mscorwks!SaveLastErrorHolder::~SaveLastErrorHolder+0x14,
calling ntdll!RtlGetLastWin32Error
0012f944 7c91056d ntdll!RtlFreeHeap+0x647, calling ntdll!_SEH_epilog
0012f958 7c91056d ntdll!RtlFreeHeap+0x647, calling ntdll!_SEH_epilog
0012f95c 79e783ca mscorwks!EEHeapFree+0x83, calling ntdll!RtlFreeHeap
0012f968 79e783e6 mscorwks!EEHeapFree+0xa5, calling mscorwks!_EH_epilog3
0012f97c 79e7a39e mscorwks!_EH_epilog3_catch_GS+0xa, calling
mscorwks!__security_check_cookie
0012f980 79ec44d2 mscorwks!AppDomain::GetFriendlyNameForDebugger+0x182,
calling mscorwks!_EH_epilog3_catch_GS
0012f990 79e783e6 mscorwks!EEHeapFree+0xa5, calling mscorwks!_EH_epilog3
0012f994 79e7839d mscorwks!EEHeapFreeInProcessHeap+0x21, calling
mscorwks!EEHeapFree
0012f9a4 79e71862 mscorwks!SaveLastErrorHolder::~SaveLastErrorHolder+0x14,
calling ntdll!RtlGetLastWin32Error
0012f9ac 79e782ed mscorwks!operator delete[]+0x41, calling
mscorwks!_EH_epilog3
0012f9d4 79e782ed mscorwks!operator delete[]+0x41, calling
mscorwks!_EH_epilog3
0012f9d8 79e7a9ff mscorwks!SArray<MethodDesc *,1>::~SArray<MethodDesc
*,1>+0x21, calling mscorwks!operator delete[]
0012f9dc 79e7a9f6 mscorwks!SArray<MethodDesc *,1>::~SArray<MethodDesc
*,1>+0x27, calling mscorwks!_EH_epilog3
0012f9fc 79e7a9f6 mscorwks!SArray<MethodDesc *,1>::~SArray<MethodDesc
*,1>+0x27, calling mscorwks!_EH_epilog3
0012fa20 79e7a9f6 mscorwks!SArray<MethodDesc *,1>::~SArray<MethodDesc
*,1>+0x27, calling mscorwks!_EH_epilog3
0012fa24 79e7ee67 mscorwks!InlineSString<200>::~InlineSString<200>+0x1d,
calling mscorwks!_EH_epilog3
0012fa38 79e7a773 mscorwks!Thread::EnablePreemptiveGC+0xf, calling
mscorwks!Thread::CatchAtSafePoint
0012fa48 79f0817e mscorwks!SystemDomain::ExecuteMainMethod+0x398, calling
mscorwks!Assembly::ExecuteMainMethod
0012fa8c 79e71862 mscorwks!SaveLastErrorHolder::~SaveLastErrorHolder+0x14,
calling ntdll!RtlGetLastWin32Error
0012fb4c 79e782ed mscorwks!operator delete[]+0x41, calling
mscorwks!_EH_epilog3
0012fb50 79e8dd55 mscorwks!CStructArray::Clear+0x15, calling
mscorwks!operator delete[]
0012fb5c 79e87adf mscorwks!HENUMInternal::ClearEnum+0x16, calling
mscorwks!CStructArray::Clear
0012fb60 79e87b53 mscorwks!CMiniMd::CommonGetCustomAttributeByName+0x7a,
calling mscorwks!HENUMInternal::ClearEnum
0012fb68 79e8837c mscorwks!HardCodedMetaSig::GetBinarySig+0x146, calling
mscorwks!_EH_epilog3
0012fb90 7c9105c8 ntdll!RtlpFreeToHeapLookaside+0x22, calling
ntdll!RtlpInterlockedPushEntrySList
0012fb9c 7c910551 ntdll!RtlFreeHeap+0x1e9, calling
ntdll!RtlpFreeToHeapLookaside
0012fba4 7c91056d ntdll!RtlFreeHeap+0x647, calling ntdll!_SEH_epilog
0012fbd4 7c91056d ntdll!RtlFreeHeap+0x647, calling ntdll!_SEH_epilog
0012fbd8 7c911962 ntdll!RtlpFreeDebugInfo+0x5c, calling ntdll!RtlFreeHeap
0012fbdc 7c911993 ntdll!RtlpFreeDebugInfo+0x77, calling
ntdll!RtlLeaveCriticalSection
0012fc08 79e744b5 mscorwks!UnsafeEELeaveCriticalSection+0x1d, calling
(JitHelp: CORINFO_HELP_GET_THREAD)
0012fc0c 79e7473a mscorwks!CrstBase::Leave+0x77, calling
mscorwks!UnsafeEELeaveCriticalSection
0012fc10 79e74753 mscorwks!CrstBase::Leave+0x96, calling
mscorwks!_EH_epilog3
0012fc50 79e78360 mscorwks!EEHeapAlloc+0x12d, calling ntdll!RtlAllocateHeap
0012fc64 7c91056d ntdll!RtlFreeHeap+0x647, calling ntdll!_SEH_epilog
0012fc68 79e783ca mscorwks!EEHeapFree+0x83, calling ntdll!RtlFreeHeap
0012fc74 79e783e6 mscorwks!EEHeapFree+0xa5, calling mscorwks!_EH_epilog3
0012fc88 79e7837f mscorwks!EEHeapAlloc+0x163, calling mscorwks!_EH_epilog3
0012fc8c 79e78331 mscorwks!EEHeapAllocInProcessHeap+0x51, calling
mscorwks!EEHeapAlloc
0012fc9c 79e783e6 mscorwks!EEHeapFree+0xa5, calling mscorwks!_EH_epilog3
0012fca0 79e7839d mscorwks!EEHeapFreeInProcessHeap+0x21, calling
mscorwks!EEHeapFree
0012fcb0 79e71862 mscorwks!SaveLastErrorHolder::~SaveLastErrorHolder+0x14,
calling ntdll!RtlGetLastWin32Error
0012fcb8 79e782ed mscorwks!operator delete[]+0x41, calling
mscorwks!_EH_epilog3
0012fce0 79e782ed mscorwks!operator delete[]+0x41, calling
mscorwks!_EH_epilog3
0012fce4 79e7a9ff mscorwks!SArray<MethodDesc *,1>::~SArray<MethodDesc
*,1>+0x21, calling mscorwks!operator delete[]
0012fce8 79e7a9f6 mscorwks!SArray<MethodDesc *,1>::~SArray<MethodDesc
*,1>+0x27, calling mscorwks!_EH_epilog3
0012fdd4 79e8a797 mscorwks!Binder::GetMethod+0x63, calling
mscorwks!Binder::CheckInit
0012fdd8 79e8a7ab mscorwks!Binder::GetMethod+0x79, calling
mscorwks!_EH_epilog3
0012fddc 79ebfe27 mscorwks!EEPolicy::GetActionOnFailure+0x8f, calling
mscorwks!_EH_epilog3
0012fe00 79e786aa mscorwks!CLRException::HandlerState::CleanupTry+0x13,
calling mscorwks!GetCurrentSEHRecord
0012fe10 79eb80fa mscorwks!EEStartupHelper+0x7a3, calling
mscorwks!CLRException::HandlerState::CleanupTry
0012fe28 79eb8141 mscorwks!EEStartupHelper+0x8d2, calling
mscorwks!__security_check_cookie
0012fe4c 79ed91f3 mscorwks!REGUTIL::InitOptionalConfigCache+0x186, calling
mscorwks!SString::CaseCompareHelper
0012feb8 7c9106eb ntdll!RtlAllocateHeap+0xeac, calling ntdll!_SEH_epilog
0012febc 79e78360 mscorwks!EEHeapAlloc+0x12d, calling ntdll!RtlAllocateHeap
0012feec 79ebc7d8 mscorwks!EEStartup+0x50, calling mscorwks!EEStartupHelper
0012fef0 79ebc7f7 mscorwks!EEStartup+0x75, calling mscorwks!_SEH_epilog4
0012ff18 79f07dc7 mscorwks!ExecuteEXE+0x59, calling
mscorwks!SystemDomain::ExecuteMainMethod
0012ff68 79f05f61 mscorwks!_CorExeMain+0x11b, calling mscorwks!ExecuteEXE
0012ffb0 79011b5f mscoree!_CorExeMain+0x2c
0012ffc0 7c816fd7 KERNEL32!BaseProcessStart+0x23

Oleg Starodumov

unread,
Jun 5, 2007, 8:50:59 AM6/5/07
to

OK. In the output of !threads, there is this thread:

> 11 a afc 001fa558 7028 Enabled 01347500:01348ae4 00149648 0 STA System.NullReferenceException
> (013365d0)

It mentions an exception, so probably that's the thread we need - its index is 11 (the first column).
Try the following:

~11 s
kb
!clrstack
!dumpstack

(the next time you might get another thread index, so check !threads output again,
find the thread with the exception and pass its index to the '~' command).

Oleg

Ante Maric

unread,
Jun 5, 2007, 9:14:46 AM6/5/07
to
Thank you for your effort!

I got it now.

This is what i get :


Microsoft (R) Windows Debugger Version 6.7.0005.0
Copyright (c) Microsoft Corporation. All rights reserved.

*** wait with pending attach

Symbol search path is: *** Invalid ***
****************************************************************************
* Symbol loading may be unreliable without a symbol search path. *
* Use .symfix to have the debugger choose a symbol path. *
* After setting your symbol path, use .reload to refresh symbol locations. *
****************************************************************************
Executable search path is:
WARNING: Process 2684 is not attached as a debuggee


The process can be examined but debug events will not be received
.........................................................................
Loading unloaded module list
....

(a7c.1fc): Wake debugger - code 80000007 (first chance)


eax=00000000 ebx=0012f4cc ecx=00185c00 edx=0012f2e0 esi=00000000

edi=7ffdc000


eip=7c90eb94 esp=0012f4a4 ebp=0012f540 iopl=0 nv up ei pl zr na pe
nc
cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000
efl=00000246

*** ERROR: Symbol file could not be found. Defaulted to export symbols for
C:\WINDOWS\system32\ntdll.dll -


ntdll!KiFastSystemCallRet:
7c90eb94 c3 ret
0:000> .symfix c:\symbols
0:000> .reload
Reloading current modules
..........................................................................
0:000> .loadby sos mscorwks
0:000> !threads
ThreadCount: 10
UnstartedThread: 0
BackgroundThread: 6
PendingThread: 0
DeadThread: 2
Hosted Runtime: no
PreEmptive GC Alloc Lock
ID OSID ThreadOBJ State GC Context Domain Count
APT Exception

0 1 1fc 00185c00 201a220 Enabled 00000000:00000000 00149648 0
MTA
2 2 578 0018f340 b220 Enabled 00000000:00000000 00149648 0
MTA (Finalizer)
3 3 fa0 001ceba0 220 Enabled 00000000:00000000 00149648 0
Ukn
5 4 964 001d7ae0 220 Enabled 00000000:00000000 00149648 0
Ukn
XXXX 5 0 001d97c8 9820 Enabled 00000000:00000000 00149648 0
Ukn
XXXX 6 0 001e5c08 9820 Enabled 00000000:00000000 00149648 0
MTA
6 7 ec4 001e6ff0 180b220 Enabled 00000000:00000000 00149648 0
MTA (Threadpool Worker)
8 8 f38 001f4d20 b020 Enabled 00000000:00000000 00149648 0
MTA
9 9 dd4 001e66a8 b220 Enabled 00000000:00000000 00149648 0
MTA
11 a 9dc 001fa6e0 7020 Enabled 013444a8:01344ab0 00149648 0
STA System.NullReferenceException (01335664)
0:000> ~11 s
eax=051f0000 ebx=03b8cc20 ecx=00001000 edx=7c90eb94 esi=000004fc
edi=00000000
eip=7c90eb94 esp=03b8cc04 ebp=03b8d344 iopl=0 nv up ei pl nz na pe

nc
cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000

efl=00000206
ntdll!KiFastSystemCallRet:
7c90eb94 c3 ret
0:011> kb


ChildEBP RetAddr Args to Child

03b8cc00 7c90e9ab 7c863764 00000002 03b8cd48 ntdll!KiFastSystemCallRet
03b8cc04 7c863764 00000002 03b8cd48 00000001
ntdll!ZwWaitForMultipleObjects+0xc
03b8d344 7c83ab20 03b8d36c 7c839b09 03b8d374
KERNEL32!UnhandledExceptionFilter+0x8e4
03b8d34c 7c839b09 03b8d374 00000000 03b8d374 KERNEL32!BaseThreadStart+0x4d
03b8d374 7c9037bf 03b8d460 03b8ffdc 03b8d47c KERNEL32!_except_handler3+0x61
03b8d398 7c90378b 03b8d460 03b8ffdc 03b8d47c ntdll!ExecuteHandler2+0x26
03b8d448 7c90eafa 00000000 03b8d47c 03b8d460 ntdll!ExecuteHandler+0x24
03b8d448 00cb8e0b 00000000 03b8d47c 03b8d460
ntdll!KiUserExceptionDispatcher+0xe
*** WARNING: Unable to verify checksum for PhotoCabin.exe
03b8d7b8 00cb8d90 00000000 00000000 00000000
PhotoCabin!PhotoCabin.MainForm.SelectPicFormatButton(System.Windows.Forms.Button)+0x5b
[E:\My Documents\Visual Studio
2005\Projects\PhotoCabin\PhotoCabin\MainForm.cs @ 378]
03b8d80c 00cb899a 00000000 00000000 00000000
PhotoCabin!PhotoCabin.MainForm.CreatePicFormatButton(System.String)+0xc0
[E:\My Documents\Visual Studio
2005\Projects\PhotoCabin\PhotoCabin\MainForm.cs @ 346]
03b8d8f0 7b2b8efa 00000000 00000000 00000000
PhotoCabin!PhotoCabin.MainForm.tbcSettings_SelectedIndexChanged(System.Object,
System.EventArgs)+0x45a [E:\My Documents\Visual Studio
2005\Projects\PhotoCabin\PhotoCabin\MainForm.cs @ 233]
*** WARNING: Unable to verify checksum for
C:\WINDOWS\assembly\NativeImages_v2.0.50727_32\System.Windows.Forms\9002a3a99680534eab3769a739b8cd14\System.Windows.Forms.ni.dll
012c95a0 7b2ba275 00000000 00000000 00000000
System_Windows_Forms_ni!System.Windows.Forms.TabControl.OnSelectedIndexChanged(System.EventArgs)+0x76
012d78d8 7b2ba609 00000000 00000000 00000000
System_Windows_Forms_ni!System.Windows.Forms.TabControl.WmSelChange()+0xd9
03b8d980 7b07a72d 00000000 00000000 00000000
System_Windows_Forms_ni!System.Windows.Forms.TabControl.WndProc(System.Windows.Forms.Message
ByRef)+0x129
03b8d9b4 7b07a706 00000000 00000000 00000000
System_Windows_Forms_ni!System.Windows.Forms.Control+ControlNativeWindow.OnMessage(System.Windows.Forms.Message
ByRef)+0xd
03b8d9b4 7b08b845 00000000 00000000 00000000
System_Windows_Forms_ni!System.Windows.Forms.Control+ControlNativeWindow.WndProc(System.Windows.Forms.Message
ByRef)+0xd6
03b8d9b4 79e88f63 00000000 00000000 00000000
System_Windows_Forms_ni!System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr,
Int32, IntPtr, IntPtr)+0x75
03b8d9d0 79e88ee4 03b8dadc 00000003 03b8daa0 mscorwks!CallDescrWorker+0x33
03b8da50 79f2905b 03b8dadc 00000003 03b8daa0
mscorwks!CallDescrWorkerWithHandler+0xa3
03b8da70 79f29369 7b684c90 03b8dad0 0000000c
mscorwks!ForwardCallToManagedMethod+0x55
0:011> !clrstack
OS Thread Id: 0x9dc (11)
ESP EIP
03b8d748 00cb8e0b
PhotoCabin.MainForm.SelectPicFormatButton(System.Windows.Forms.Button)
03b8d7c0 00cb8d90 PhotoCabin.MainForm.CreatePicFormatButton(System.String)
03b8d814 00cb899a
PhotoCabin.MainForm.tbcSettings_SelectedIndexChanged(System.Object,
System.EventArgs)
03b8d8fc 7b2b8efa
System.Windows.Forms.TabControl.OnSelectedIndexChanged(System.EventArgs)
03b8d910 7b2ba275 System.Windows.Forms.TabControl.WmSelChange()
03b8d924 7b2ba609
System.Windows.Forms.TabControl.WndProc(System.Windows.Forms.Message ByRef)
03b8d964 7b07a72d
System.Windows.Forms.Control+ControlNativeWindow.OnMessage(System.Windows.Forms.Message
ByRef)
03b8d968 7b07a706
System.Windows.Forms.Control+ControlNativeWindow.WndProc(System.Windows.Forms.Message
ByRef)
03b8d97c 7b08b845
System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr, Int32, IntPtr,
IntPtr)
03b8daf0 79e88f63 [GCFrame: 03b8daf0]
03b8dc90 79e88f63 [UMThkCallFrame: 03b8dc90]
03b8ddfc 79e88f63 [NDirectMethodFrameGeneric: 03b8ddfc]
System.Windows.Forms.UnsafeNativeMethods.SendMessage(System.Runtime.InteropServices.HandleRef,
Int32, IntPtr, IntPtr)
03b8de18 7b06d939 System.Windows.Forms.Control.SendMessage(Int32, IntPtr,
IntPtr)
03b8de3c 7b06deae
System.Windows.Forms.Control.ReflectMessageInternal(IntPtr,
System.Windows.Forms.Message ByRef)
03b8de48 7b0d0602
System.Windows.Forms.Control.WmNotify(System.Windows.Forms.Message ByRef)
03b8de68 7b072dd6
System.Windows.Forms.Control.WndProc(System.Windows.Forms.Message ByRef)
03b8de6c 7b07f795 [InlinedCallFrame: 03b8de6c]
03b8e06c 79e88f63 [GCFrame: 03b8e06c]
03b8e20c 79e88f63 [UMThkCallFrame: 03b8e20c]
03b8e5c0 79e88f63 [InlinedCallFrame: 03b8e5c0]
System.Windows.Forms.UnsafeNativeMethods.CallWindowProc(IntPtr, IntPtr,
Int32, IntPtr, IntPtr)
03b8e5bc 7b07a7d4
System.Windows.Forms.NativeWindow.DefWndProc(System.Windows.Forms.Message
ByRef)
03b8e600 7b07552c
System.Windows.Forms.Control.DefWndProc(System.Windows.Forms.Message ByRef)
03b8e604 7b407894
System.Windows.Forms.Control.WmMouseDown(System.Windows.Forms.Message ByRef,
System.Windows.Forms.MouseButtons, Int32)
03b8e620 7b072c5d
System.Windows.Forms.Control.WndProc(System.Windows.Forms.Message ByRef)
03b8e624 7b2ba6d2 [InlinedCallFrame: 03b8e624]
03b8e858 00000201 [GCFrame: 03b8e858]
03b8e9f8 00000201 [UMThkCallFrame: 03b8e9f8]
03b8eb6c 00000201 [NDirectMethodFrameGeneric: 03b8eb6c]
System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG ByRef)
03b8eb7c 7b084766
System.Windows.Forms.Application+ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(Int32,
Int32, Int32)
03b8ec1c 7b08432d
System.Windows.Forms.Application+ThreadContext.RunMessageLoopInner(Int32,
System.Windows.Forms.ApplicationContext)
03b8ec88 7b08416b
System.Windows.Forms.Application+ThreadContext.RunMessageLoop(Int32,
System.Windows.Forms.ApplicationContext)
03b8ecb8 7b0c69fe
System.Windows.Forms.Application.Run(System.Windows.Forms.Form)
03b8ecc8 00cb1252 PhotoCabin.Program.Main()
03b8ef1c 79e88f63 [GCFrame: 03b8ef1c]
03b8f364 79e88f63 [HelperMethodFrame_PROTECTOBJ: 03b8f364]
System.AppDomain.nExecuteAssembly(System.Reflection.Assembly,
System.String[])
03b8f5f4 79399956 System.AppDomain.ExecuteAssembly(System.String,
System.Security.Policy.Evidence, System.String[])
03b8f60c 00cb11ab
Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
03b8f634 793d7a7b
System.Threading.ThreadHelper.ThreadStart_Context(System.Object)
03b8f63c 793683dd
System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext,
System.Threading.ContextCallback, System.Object)
03b8f654 793d7b5c System.Threading.ThreadHelper.ThreadStart()
03b8f878 79e88f63 [GCFrame: 03b8f878]
0:011> !dumpstack
OS Thread Id: 0x9dc (11)


Current frame: ntdll!KiFastSystemCallRet
ChildEBP RetAddr Caller,Callee

03b8cc00 7c90e9ab ntdll!ZwWaitForMultipleObjects+0xc
03b8cc04 7c863764 KERNEL32!UnhandledExceptionFilter+0x8e4, calling
ntdll!ZwWaitForMultipleObjects
03b8cc9c 7c86359e KERNEL32!UnhandledExceptionFilter+0x732, calling
KERNEL32!CreateEventA
03b8ccac 7c86365c KERNEL32!UnhandledExceptionFilter+0x7e6, calling
ntdll!_chkstk
03b8cd20 793d7b5c (MethodDesc 0x79254480 +0x40
System.Threading.ThreadHelper.ThreadStart()), calling (MethodDesc 0x7913f3d0
+0 System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext,
System.Threading.ContextCallback, System.Object))
03b8ceb8 79e771e9 mscorwks!Thread::StackWalkFrames+0xae, calling
mscorwks!Thread::StackWalkFramesEx
03b8ced8 79e771f9 mscorwks!Thread::StackWalkFrames+0xbe, calling
mscorwks!__security_check_cookie
03b8cf20 7c910732 ntdll!RtlpAllocateFromHeapLookaside+0x42, calling
ntdll!_SEH_epilog
03b8cf4c 7c910732 ntdll!RtlpAllocateFromHeapLookaside+0x42, calling
ntdll!_SEH_epilog
03b8cf50 7c9106ab ntdll!RtlAllocateHeap+0x1c2, calling
ntdll!RtlpAllocateFromHeapLookaside
03b8cf54 7c9106eb ntdll!RtlAllocateHeap+0xeac, calling ntdll!_SEH_epilog
03b8cfb4 79eed402 mscorwks!CallDefaultConstructor+0x13a, calling
mscorwks!__security_check_cookie
03b8d0fc 7c9105c8 ntdll!RtlpFreeToHeapLookaside+0x22, calling
ntdll!RtlpInterlockedPushEntrySList
03b8d14c 7c910e12 ntdll!RtlFreeHeap+0x422, calling
ntdll!RtlpUpdateIndexInsertBlock
03b8d204 7c9106eb ntdll!RtlAllocateHeap+0xeac, calling ntdll!_SEH_epilog
03b8d208 051ac252 *** WARNING: Unable to verify checksum for C:\Program
Files\Common Files\Logitech\Scrolling\LgMsgHk.dll
*** ERROR: Symbol file could not be found. Defaulted to export symbols for
C:\Program Files\Common Files\Logitech\Scrolling\LgMsgHk.dll -
LgMsgHk!InstallMsgHook+0x746f, calling ntdll!RtlAllocateHeap
03b8d224 79e74411 mscorwks!ClrFlsSetValue+0x57, calling mscorwks!_EH_epilog3
03b8d228 79e74435 mscorwks!DecCantStopCount+0x10, calling
mscorwks!ClrFlsSetValue
03b8d234 79e74753 mscorwks!CrstBase::Leave+0x96, calling
mscorwks!_EH_epilog3
03b8d24c 79e74811 mscorwks!CrstBase::Enter+0xe2, calling
ntdll!RtlTryEnterCriticalSection
03b8d25c 79e74753 mscorwks!CrstBase::Leave+0x96, calling
mscorwks!_EH_epilog3
03b8d260 79e7470b mscorwks!BaseWrapper<ListLock *,FunctionBase<ListLock
*,&ListLock::HolderEnter,&ListLock::HolderLeave,2>,0,&CompareDefault<ListLock
*>,2>::~BaseWrapper<ListLock *,FunctionBase<ListLock
*,&ListLock::HolderEnter,&ListLock::HolderLeave,2>,0,&CompareDefault<ListLock

*>,2>+0x2b, calling mscorwks!_EH_epilog3

03b8d278 78158584 MSVCR80!__CxxExceptionFilter+0x235, calling
MSVCR80!_GetRangeOfTrysToCheck
03b8d2a0 78132c78 MSVCR80!__set_flsgetvalue+0xd, calling
KERNEL32!TlsGetValue
03b8d2ac 78132e24 MSVCR80!_getptd_noexit+0x72, calling
ntdll!RtlSetLastWin32Error
03b8d2bc 78132e2f MSVCR80!_getptd+0x6, calling MSVCR80!_getptd_noexit
03b8d2c4 78158933 MSVCR80!__CxxExceptionFilter+0x5e4, calling
MSVCR80!_getptd
03b8d2dc 7a0d9e5b mscorwks!ManagedThreadCallState::IsAppDomainEqual+0xa5
03b8d2e4 7a0d9e0a mscorwks!ManagedThreadCallState::IsAppDomainEqual+0x54,
calling mscorwks!_EH_epilog3
03b8d2e8 7c910833 ntdll!RtlpImageNtHeader+0x56, calling ntdll!_SEH_epilog
03b8d300 7c90e21f ntdll!ZwQueryVirtualMemory+0xc
03b8d304 7c87fa11 KERNEL32!_ValidateEH3RN+0xb6, calling
ntdll!ZwQueryVirtualMemory
03b8d344 7c83ab20 KERNEL32!BaseThreadStart+0x4d, calling
KERNEL32!UnhandledExceptionFilter
03b8d34c 7c839b09 KERNEL32!_except_handler3+0x61
03b8d374 7c9037bf ntdll!ExecuteHandler2+0x26
03b8d398 7c90378b ntdll!ExecuteHandler+0x24, calling ntdll!ExecuteHandler2
03b8d3bc 7c937860 ntdll!RtlDispatchException+0xb1, calling
ntdll!RtlpExecuteHandlerForException
03b8d3e4 7c910551 ntdll!RtlFreeHeap+0x1e9, calling
ntdll!RtlpFreeToHeapLookaside
03b8d3ec 7c91056d ntdll!RtlFreeHeap+0x647, calling ntdll!_SEH_epilog
03b8d42c 7c910732 ntdll!RtlpAllocateFromHeapLookaside+0x42, calling
ntdll!_SEH_epilog
03b8d448 7c90eafa ntdll!KiUserExceptionDispatcher+0xe, calling
ntdll!RtlDispatchException
03b8d748 00cb8e0b (MethodDesc 0x969ef0 +0x5b
PhotoCabin.MainForm.SelectPicFormatButton(System.Windows.Forms.Button))
====> Exception cxr@3b8d47c
03b8d5ec 7c9106eb ntdll!RtlAllocateHeap+0xeac, calling ntdll!_SEH_epilog
03b8d5f0 79e78360 mscorwks!EEHeapAlloc+0x12d, calling ntdll!RtlAllocateHeap
03b8d5fc 79e7837f mscorwks!EEHeapAlloc+0x163, calling mscorwks!_EH_epilog3
03b8d610 79e7a7a8 mscorwks!Thread::GetLastNormalStackAddress+0x5, calling
mscorwks!Thread::GetStackGuarantee
03b8d614 79e7a7a2 mscorwks!Thread::GetLastNormalStackAddress+0xb, calling
mscorwks!Thread::GetLastNormalStackAddress
03b8d628 79e7837f mscorwks!EEHeapAlloc+0x163, calling mscorwks!_EH_epilog3
03b8d62c 79e78331 mscorwks!EEHeapAllocInProcessHeap+0x51, calling
mscorwks!EEHeapAlloc
03b8d63c 79e78414 mscorwks!operator new+0x2b, calling
mscorwks!EEHeapAllocInProcessHeap
03b8d644 79e78431 mscorwks!operator new+0x49, calling mscorwks!_EH_epilog3
03b8d658 79e7e4f8 mscorwks!Holder<Frame *,&DoNothing<Frame
*>,&COMPlusCooperativeTransitionHandler,0,&CompareDefault<Frame
*>,2>::~Holder<Frame *,&DoNothing<Frame
*>,&COMPlusCooperativeTransitionHandler,0,&CompareDefault<Frame *>,2>+0x2b,
calling mscorwks!_EH_epilog3
03b8d75c 7a4a6956 (MethodDesc 0x7a7ffbb8 +0x26
System.ComponentModel.EventHandlerList.get_Item(System.Object)), calling
(MethodDesc 0x7a7ffbe0 +0
System.ComponentModel.EventHandlerList.Find(System.Object))
03b8d77c 79e7bbb1 mscorwks!PreStubWorker+0x138, calling mscorwks!_EH_epilog3
03b8d780 00391efe 00391efe, calling mscorwks!PreStubWorker
03b8d7b8 00cb8d90 (MethodDesc 0x969ee0 +0xc0
PhotoCabin.MainForm.CreatePicFormatButton(System.String)), calling 01270b44
03b8d7d0 79e7bbb1 mscorwks!PreStubWorker+0x138, calling mscorwks!_EH_epilog3
03b8d7d4 00391efe 00391efe, calling mscorwks!PreStubWorker
03b8d80c 00cb899a (MethodDesc 0x969e80 +0x45a
PhotoCabin.MainForm.tbcSettings_SelectedIndexChanged(System.Object,
System.EventArgs)), calling 01270b1c
03b8d818 79e7bd6b mscorwks!MethodDesc::DoPrestub+0x545, calling
mscorwks!_EH_epilog3
03b8d868 79e7bba9 mscorwks!PreStubWorker+0x130, calling
ntdll!RtlSetLastWin32Error
03b8d86c 79e7bbb1 mscorwks!PreStubWorker+0x138, calling mscorwks!_EH_epilog3
03b8d8f0 7b2b8efa (MethodDesc 0x7b5f0ff8 +0x76
System.Windows.Forms.TabControl.OnSelectedIndexChanged(System.EventArgs))
03b8d908 7b2ba275 (MethodDesc 0x7b5f10e8 +0xd9
System.Windows.Forms.TabControl.WmSelChange())
03b8d91c 7b2ba609 (MethodDesc 0x7b5f1100 +0x129
System.Windows.Forms.TabControl.WndProc(System.Windows.Forms.Message
ByRef)), calling (MethodDesc 0x7b5f10e8 +0
System.Windows.Forms.TabControl.WmSelChange())
03b8d95c 7b07a72d (MethodDesc 0x7b5a8168 +0xd
System.Windows.Forms.Control+ControlNativeWindow.OnMessage(System.Windows.Forms.Message
ByRef))
03b8d960 7b07a706 (MethodDesc 0x7b5a8180 +0xd6
System.Windows.Forms.Control+ControlNativeWindow.WndProc(System.Windows.Forms.Message
ByRef)), calling 00977062
03b8d974 7b08b845 (MethodDesc 0x7b4a7d70 +0x75
System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr, Int32, IntPtr,
IntPtr))
03b8d990 77f184af GDI32!NtGdiPolyPatBlt+0xc
03b8d994 77f16398 GDI32!PolyPatBlt+0x1b3, calling GDI32!NtGdiPolyPatBlt
03b8d9b4 79e88f63 mscorwks!CallDescrWorker+0x33
03b8d9d0 79e88ee4 mscorwks!CallDescrWorkerWithHandler+0xa3, calling
mscorwks!CallDescrWorker
03b8da50 79f2905b mscorwks!ForwardCallToManagedMethod+0x55, calling
mscorwks!CallDescrWorkerWithHandler
03b8da70 79f29369 mscorwks!DoUMThunkCallWorker+0x1e5, calling
mscorwks!ForwardCallToManagedMethod
03b8db70 79f29143 mscorwks!DoUMThunkCall+0x38b, calling
mscorwks!DoUMThunkCallWorker
03b8dc48 00393316 00393316, calling mscorwks!DoUMThunkCall
03b8dc78 7e418734 USER32!InternalCallWinProc+0x28
03b8dc98 7e418734 USER32!InternalCallWinProc+0x28
03b8dcc4 7e418816 USER32!UserCallWinProcCheckWow+0x150, calling
USER32!InternalCallWinProc
03b8dd2c 7e41b89b USER32!SendMessageWorker+0x4a5, calling
USER32!UserCallWinProcCheckWow
03b8dd68 7e41b903 USER32!SendMessageW+0x7f, calling USER32!SendMessageWorker
03b8dd88 79ef064c mscorwks!NDirectGenericStubReturnFromCall
03b8ddb8 0095a357 0095a357, calling mscorwks!NDirectGenericStubWorker
03b8dde4 7b06d939 (MethodDesc 0x7b4a61c8 +0x3d
System.Windows.Forms.Control.SendMessage(Int32, IntPtr, IntPtr)), calling
7b64e248
03b8de04 7b06d939 (MethodDesc 0x7b4a61c8 +0x3d
System.Windows.Forms.Control.SendMessage(Int32, IntPtr, IntPtr)), calling
7b64e248
03b8de2c 7b06deae (MethodDesc 0x7b5a5750 +0x3e
System.Windows.Forms.Control.ReflectMessageInternal(IntPtr,
System.Windows.Forms.Message ByRef)), calling 7b64eea0
03b8de40 7b0d0602 (MethodDesc 0x7b5a59f0 +0x2e
System.Windows.Forms.Control.WmNotify(System.Windows.Forms.Message ByRef)),
calling (MethodDesc 0x7b5a5750 +0
System.Windows.Forms.Control.ReflectMessageInternal(IntPtr,
System.Windows.Forms.Message ByRef))
03b8de60 7b072dd6 (MethodDesc 0x7b5a5a50 +0x6a6
System.Windows.Forms.Control.WndProc(System.Windows.Forms.Message ByRef)),
calling (MethodDesc 0x7b5a59f0 +0
System.Windows.Forms.Control.WmNotify(System.Windows.Forms.Message ByRef))
03b8deb0 7b07a608 (MethodDesc 0x7b5af1c0 +0x48
System.Windows.Forms.Message.Create(IntPtr, Int32, IntPtr, IntPtr)), calling
(JitHelp: CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE_NOCTOR)
03b8dec4 7b07f795 (MethodDesc 0x7b5a5588 +0x45
System.Windows.Forms.ScrollableControl.WndProc(System.Windows.Forms.Message
ByRef)), calling (MethodDesc 0x7b5a5a50 +0
System.Windows.Forms.Control.WndProc(System.Windows.Forms.Message ByRef))
03b8decc 7b07a72d (MethodDesc 0x7b5a8168 +0xd
System.Windows.Forms.Control+ControlNativeWindow.OnMessage(System.Windows.Forms.Message
ByRef))
03b8ded0 7b07a706 (MethodDesc 0x7b5a8180 +0xd6
System.Windows.Forms.Control+ControlNativeWindow.WndProc(System.Windows.Forms.Message
ByRef)), calling 00977062
03b8dee4 7b08b845 (MethodDesc 0x7b4a7d70 +0x75
System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr, Int32, IntPtr,
IntPtr))
03b8df24 79e88f63 mscorwks!CallDescrWorker+0x33
03b8df40 79e88ee4 mscorwks!CallDescrWorkerWithHandler+0xa3, calling
mscorwks!CallDescrWorker
03b8dfc0 79f2905b mscorwks!ForwardCallToManagedMethod+0x55, calling
mscorwks!CallDescrWorkerWithHandler
03b8dfe0 79f29369 mscorwks!DoUMThunkCallWorker+0x1e5, calling
mscorwks!ForwardCallToManagedMethod
03b8e050 79f29249 mscorwks!DoUMThunkCallWorker+0xc3, calling
mscorwks!_alloca_probe_16
03b8e094 79f293e5 mscorwks!Holder<CleanupWorkList
*,&DoNothing<CleanupWorkList
*>,&DoCleanupWorkList,0,&CompareDefault<CleanupWorkList
*>,2>::~Holder<CleanupWorkList *,&DoNothing<CleanupWorkList
*>,&DoCleanupWorkList,0,&CompareDefault<CleanupWorkList *>,2>+0x2b, calling
mscorwks!_EH_epilog3
03b8e098 79f293a6 mscorwks!DoUMThunkCallWorker+0x24f, calling
mscorwks!GCFrame::Pop
03b8e0ec 79f29143 mscorwks!DoUMThunkCall+0x38b, calling
mscorwks!DoUMThunkCallWorker
03b8e124 79e7a422 mscorwks!_EH_epilog3_GS+0xa, calling
mscorwks!__security_check_cookie
03b8e174 79f293b7 mscorwks!DoUMThunkCallWorker+0x260, calling
mscorwks!_EH_epilog3_GS
03b8e178 79f29143 mscorwks!DoUMThunkCall+0x38b, calling
mscorwks!DoUMThunkCallWorker
03b8e18c 79f29163 mscorwks!DoUMThunkCall+0x3ab, calling
mscorwks!SOIntolerantTransitionHandler::~SOIntolerantTransitionHandler
03b8e19c 79f291a7 mscorwks!DoUMThunkCall+0x419, calling
mscorwks!__security_check_cookie
03b8e1a0 79e74496 mscorwks!MemoryReport::ContextScope::ContextScope+0x5f,
calling mscorwks!__security_check_cookie
03b8e1c4 00393316 00393316, calling mscorwks!DoUMThunkCall
03b8e1f4 7e418734 USER32!InternalCallWinProc+0x28
03b8e214 7e418734 USER32!InternalCallWinProc+0x28
03b8e240 7e418816 USER32!UserCallWinProcCheckWow+0x150, calling
USER32!InternalCallWinProc
03b8e2a8 7e41b89b USER32!SendMessageWorker+0x4a5, calling
USER32!UserCallWinProcCheckWow
03b8e2e4 7e41b903 USER32!SendMessageW+0x7f, calling USER32!SendMessageWorker
03b8e304 773eaff1 comctl32!CCSendNotify+0xc20, calling USER32!SendMessageW
03b8e334 7e41b4c0 USER32!DispatchClientMessage+0xa3, calling
USER32!UserCallWinProcCheckWow
03b8e354 7e4185a4 USER32!HMValidateHandle+0xae, calling
USER32!NtUserValidateHandleSecure
03b8e370 7e41b755 USER32!GetParent+0x22, calling USER32!_GetParent
03b8e374 7e41b785 USER32!GetParent+0x68, calling USER32!_SEH_epilog
03b8e39c 773eb161 comctl32!SendNotifyEx+0x57, calling comctl32!CCSendNotify
03b8e3d8 7740e2ce comctl32!ChangeSel+0x208, calling comctl32!SendNotifyEx
03b8e438 7740ef87 comctl32!Tab_OnLButtonDown+0xcf, calling
comctl32!ChangeSel
03b8e458 7e4188da USER32!GetWindowLongW+0x49, calling USER32!_SEH_epilog
03b8e47c 7740f4f7 comctl32!Tab_WndProc+0x4c8, calling
comctl32!Tab_OnLButtonDown
03b8e4a4 79ef0588 mscorwks!NDirectGenericStubBuildArguments+0x87, calling
mscorwks!RunML
03b8e4b0 79e7a773 mscorwks!Thread::EnablePreemptiveGC+0xf, calling
mscorwks!Thread::CatchAtSafePoint
03b8e4bc 7e418734 USER32!InternalCallWinProc+0x28
03b8e4e8 7e418816 USER32!UserCallWinProcCheckWow+0x150, calling
USER32!InternalCallWinProc
03b8e524 79ef0603 mscorwks!NDirectGenericStubBuildArguments+0x145, calling
mscorwks!_EH_epilog3
03b8e550 7e41c63f USER32!CallWindowProcAorW+0x98, calling
USER32!UserCallWinProcCheckWow
03b8e580 7e41c665 USER32!CallWindowProcW+0x1b, calling
USER32!CallWindowProcAorW
03b8e5a0 7b07a7d4 (MethodDesc 0x7b4a7d78 +0x94
System.Windows.Forms.NativeWindow.DefWndProc(System.Windows.Forms.Message
ByRef)), calling USER32!CallWindowProcW
03b8e5cc 7b07a7d4 (MethodDesc 0x7b4a7d78 +0x94
System.Windows.Forms.NativeWindow.DefWndProc(System.Windows.Forms.Message
ByRef)), calling USER32!CallWindowProcW
03b8e5d4 7b0c9f0b (MethodDesc 0x7b5a6350 +0x63
System.Windows.Forms.Control.get_MouseButtons()), calling 7b6849d0
03b8e5f8 7b07552c (MethodDesc 0x7b4a63c0 +0xc
System.Windows.Forms.Control.DefWndProc(System.Windows.Forms.Message
ByRef)), calling 7b64f510
03b8e5fc 7b407894 (MethodDesc 0x7b5a59b0
System.Windows.Forms.Control.WmMouseDown(System.Windows.Forms.Message ByRef,
System.Windows.Forms.MouseButtons, Int32))
03b8e610 7b072c5d (MethodDesc 0x7b5a5a50 +0x52d
System.Windows.Forms.Control.WndProc(System.Windows.Forms.Message ByRef)),
calling (MethodDesc 0x7b5a59b0 +0
System.Windows.Forms.Control.WmMouseDown(System.Windows.Forms.Message ByRef,
System.Windows.Forms.MouseButtons, Int32))
03b8e67c 7b2ba6d2 (MethodDesc 0x7b5f1100 +0x1f2
System.Windows.Forms.TabControl.WndProc(System.Windows.Forms.Message
ByRef)), calling (MethodDesc 0x7b5a5a50 +0
System.Windows.Forms.Control.WndProc(System.Windows.Forms.Message ByRef))
03b8e6bc 7b07a72d (MethodDesc 0x7b5a8168 +0xd
System.Windows.Forms.Control+ControlNativeWindow.OnMessage(System.Windows.Forms.Message
ByRef))
03b8e6c0 7b07a706 (MethodDesc 0x7b5a8180 +0xd6
System.Windows.Forms.Control+ControlNativeWindow.WndProc(System.Windows.Forms.Message
ByRef)), calling 00977062
03b8e6d4 7b08b845 (MethodDesc 0x7b4a7d70 +0x75
System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr, Int32, IntPtr,
IntPtr))
03b8e714 79e88f63 mscorwks!CallDescrWorker+0x33
03b8e730 79e88ee4 mscorwks!CallDescrWorkerWithHandler+0xa3, calling
mscorwks!CallDescrWorker
03b8e7b0 79f2905b mscorwks!ForwardCallToManagedMethod+0x55, calling
mscorwks!CallDescrWorkerWithHandler
03b8e7d0 79f29369 mscorwks!DoUMThunkCallWorker+0x1e5, calling
mscorwks!ForwardCallToManagedMethod
03b8e83c 79f29249 mscorwks!DoUMThunkCallWorker+0xc3, calling
mscorwks!_alloca_probe_16
03b8e86c 79e8b035 mscorwks!RunML+0x1313, calling
mscorwks!__security_check_cookie
03b8e870 79e89233 mscorwks!StackingAllocator::Collapse+0x1c, calling
mscorwks!StackingAllocator::Clear
03b8e884 79e8a67b mscorwks!CleanupWorkList::Cleanup+0x84, calling
mscorwks!StackingAllocator::Collapse
03b8e8d8 79f29143 mscorwks!DoUMThunkCall+0x38b, calling
mscorwks!DoUMThunkCallWorker
03b8e91c 7e41f7f6 USER32!CallHookWithSEH+0x21
03b8e92c 7e41f805 USER32!CallHookWithSEH+0x44, calling USER32!_SEH_epilog
03b8e954 7e41f805 USER32!CallHookWithSEH+0x44, calling USER32!_SEH_epilog
03b8e958 7e41f94b USER32!__fnHkINLPMSG+0x25, calling USER32!CallHookWithSEH
03b8e964 7e41f95b USER32!__fnHkINLPMSG+0x35, calling USER32!XyCallbackReturn
03b8e9b0 00393316 00393316, calling mscorwks!DoUMThunkCall
03b8e9e0 7e418734 USER32!InternalCallWinProc+0x28
03b8ea00 7e418734 USER32!InternalCallWinProc+0x28
03b8ea2c 7e418816 USER32!UserCallWinProcCheckWow+0x150, calling
USER32!InternalCallWinProc
03b8ea94 7e4189cd USER32!DispatchMessageWorker+0x306, calling
USER32!UserCallWinProcCheckWow
03b8eaf4 7e418a10 USER32!DispatchMessageW+0xf, calling
USER32!DispatchMessageWorker
03b8eb04 79ef064c mscorwks!NDirectGenericStubReturnFromCall
03b8eb28 0095a0ef 0095a0ef, calling mscorwks!NDirectGenericStubWorker
03b8eb54 7b084766 (MethodDesc 0x7b5adea8 +0x2ea
System.Windows.Forms.Application+ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(Int32,
Int32, Int32)), calling 7b64e3d4
03b8eb74 7b084766 (MethodDesc 0x7b5adea8 +0x2ea
System.Windows.Forms.Application+ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(Int32,
Int32, Int32)), calling 7b64e3d4
03b8eb8c 7b08491c (MethodDesc 0x7b5adea8 +0x4a0
System.Windows.Forms.Application+ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(Int32,
Int32, Int32)), calling USER32!NtUserWaitMessage
03b8ec0c 7b08432d (MethodDesc 0x7b5ab448 +0x17d
System.Windows.Forms.Application+ThreadContext.RunMessageLoopInner(Int32,
System.Windows.Forms.ApplicationContext)), calling 00977ac6
03b8ec20 0095a0ef 0095a0ef, calling mscorwks!NDirectGenericStubWorker
03b8ec7c 7b08416b (MethodDesc 0x7b4a8770 +0x53
System.Windows.Forms.Application+ThreadContext.RunMessageLoop(Int32,
System.Windows.Forms.ApplicationContext)), calling (MethodDesc 0x7b5ab448 +0
System.Windows.Forms.Application+ThreadContext.RunMessageLoopInner(Int32,
System.Windows.Forms.ApplicationContext))
03b8ecac 7b0c69fe (MethodDesc 0x7b4a7670 +0x2e
System.Windows.Forms.Application.Run(System.Windows.Forms.Form)), calling
7b64f868
03b8ecc0 00cb1252 (MethodDesc 0x9696e8 +0x4a PhotoCabin.Program.Main()),
calling (MethodDesc 0x7b4a7670 +0
System.Windows.Forms.Application.Run(System.Windows.Forms.Form))
03b8ecc4 79e7bbb1 mscorwks!PreStubWorker+0x138, calling mscorwks!_EH_epilog3
03b8ecc8 00391efe 00391efe, calling mscorwks!PreStubWorker
03b8ed00 79e88f63 mscorwks!CallDescrWorker+0x33
03b8ed10 79e88ee4 mscorwks!CallDescrWorkerWithHandler+0xa3, calling
mscorwks!CallDescrWorker
03b8ed90 79e88e31 mscorwks!MethodDesc::CallDescr+0x19c, calling
mscorwks!CallDescrWorkerWithHandler
03b8edc0 79e88fe3 mscorwks!MetaSig::MetaSig+0x38, calling MSVCR80!memcpy
03b8edcc 79e88db3 mscorwks!MethodDesc::CallDescr+0xaf, calling
mscorwks!ClrSafeInt<unsigned int>::addition
03b8edd8 79e88dc3 mscorwks!MethodDesc::CallDescr+0xbb, calling
mscorwks!_alloca_probe_16
03b8ee3c 79e7c34e mscorwks!CorSigEatCustomModifiers+0x1c, calling
mscorwks!CorSigEatAnyVASentinel
03b8ee58 79e7c301
mscorwks!CorSigEatCustomModifiersAndUncompressElementType+0x19, calling
mscorwks!CorSigEatCustomModifiers
03b8ee74 79f076f4 mscorwks!ValidateMainMethod+0xca, calling
mscorwks!CorSigEatCustomModifiersAndUncompressElementType
03b8ee8c 79e88d3b mscorwks!MethodDesc::CallDescr+0x1f, calling
mscorwks!_alloca_probe_16
03b8eebc 79e7a56d mscorwks!BaseDomain::LockHolder::~LockHolder+0x1d, calling
mscorwks!_EH_epilog3
03b8eed0 79e88d19 mscorwks!MethodDesc::CallTargetWorker+0x20, calling
mscorwks!MethodDesc::CallDescr
03b8eee8 79e88cf6 mscorwks!MethodDescCallSite::Call+0x18, calling
mscorwks!MethodDesc::CallTargetWorker
03b8eefc 79f084b0 mscorwks!ClassLoader::RunMain+0x220, calling
mscorwks!MethodDescCallSite::Call
03b8f008 79e7c34e mscorwks!CorSigEatCustomModifiers+0x1c, calling
mscorwks!CorSigEatAnyVASentinel
03b8f024 79e7c301
mscorwks!CorSigEatCustomModifiersAndUncompressElementType+0x19, calling
mscorwks!CorSigEatCustomModifiers
03b8f040 79f076f4 mscorwks!ValidateMainMethod+0xca, calling
mscorwks!CorSigEatCustomModifiersAndUncompressElementType
03b8f060 79f082a9 mscorwks!Assembly::ExecuteMainMethod+0xa6, calling
mscorwks!ClassLoader::RunMain
03b8f0e8 79ea12f6 mscorwks!AppDomain::LoadDomainAssembly+0x170, calling
mscorwks!_EH_epilog3
03b8f0ec 79efca6b mscorwks!LoadDomainAssemblyHelper+0xc2, calling
mscorwks!AppDomain::LoadDomainAssembly
03b8f0f4 79e786aa mscorwks!CLRException::HandlerState::CleanupTry+0x13,
calling mscorwks!GetCurrentSEHRecord
03b8f104 79efca7a mscorwks!LoadDomainAssemblyHelper+0xd1, calling
mscorwks!CLRException::HandlerState::CleanupTry
03b8f11c 79efcaa3 mscorwks!LoadDomainAssemblyHelper+0xfa, calling
mscorwks!__security_check_cookie
03b8f194 79e81dc7 mscorwks!FusionBind::CompareEx+0x65, calling
MSVCR80!memcmp
03b8f1ac 79e81d57 mscorwks!DomainAssemblyCache::CompareBindingSpec+0x14,
calling mscorwks!FusionBind::CompareEx
03b8f1bc 79e808c1 mscorwks!ComparePtr::CompareHelper+0xe
03b8f1c8 79e808a6 mscorwks!HashMap::CompareValues+0x12
03b8f1d4 79e74988 mscorwks!HashMap::LookupValue+0x88, calling
mscorwks!HashMap::CompareValues
03b8f1dc 79e749a6 mscorwks!HashMap::LookupValue+0xca, calling
mscorwks!_EH_epilog3
03b8f200 79e9ffce mscorwks!BaseWrapper<PEAssembly *,FunctionBase<PEAssembly
*,&DoNothing<PEAssembly
*>,&DoTheRelease<PEAssembly>,2>,0,&CompareDefault<PEAssembly
*>,2>::~BaseWrapper<PEAssembly *,FunctionBase<PEAssembly
*,&DoNothing<PEAssembly
*>,&DoTheRelease<PEAssembly>,2>,0,&CompareDefault<PEAssembly *>,2>+0x2f,
calling mscorwks!_EH_epilog3
03b8f218 7c9105c8 ntdll!RtlpFreeToHeapLookaside+0x22, calling
ntdll!RtlpInterlockedPushEntrySList
03b8f224 7c910551 ntdll!RtlFreeHeap+0x1e9, calling
ntdll!RtlpFreeToHeapLookaside
03b8f22c 7c91056d ntdll!RtlFreeHeap+0x647, calling ntdll!_SEH_epilog
03b8f250 7c910d5c ntdll!RtlFreeHeap+0x2e9, calling
ntdll!RtlpCoalesceFreeBlocks
03b8f258 7c910e91 ntdll!RtlFreeHeap+0x4fc, calling
ntdll!RtlLeaveCriticalSection
03b8f260 7c91056d ntdll!RtlFreeHeap+0x647, calling ntdll!_SEH_epilog
03b8f29c 79e74753 mscorwks!CrstBase::Leave+0x96, calling
mscorwks!_EH_epilog3
03b8f2a0 79e7470b mscorwks!BaseWrapper<ListLock *,FunctionBase<ListLock
*,&ListLock::HolderEnter,&ListLock::HolderLeave,2>,0,&CompareDefault<ListLock
*>,2>::~BaseWrapper<ListLock *,FunctionBase<ListLock
*,&ListLock::HolderEnter,&ListLock::HolderLeave,2>,0,&CompareDefault<ListLock

*>,2>+0x2b, calling mscorwks!_EH_epilog3

03b8f2c8 7a2cc9d0 mscorwks!AppDomainNative::ExecuteAssemblyHelper+0x32,
calling mscorwks!Assembly::ExecuteMainMethod
03b8f308 7a2ce24e mscorwks!AppDomainNative::ExecuteAssembly+0x19c, calling
mscorwks!AppDomainNative::ExecuteAssemblyHelper
03b8f358 7a2ce092 mscorwks!AppDomainNative::ExecuteAssembly+0x43, calling
mscorwks!LazyMachStateCaptureState
03b8f37c 7a2ce04f mscorwks!AppDomainNative::ExecuteAssembly, calling
mscorwks!UnwindAndContinueRethrowHelperAfterCatch
03b8f3d8 79e865c1 mscorwks!BaseWrapper<ISectionWithStringKey
*,FunctionBase<ISectionWithStringKey *,&DoNothing<ISectionWithStringKey
*>,&DoTheRelease<ISectionWithStringKey>,2>,0,&CompareDefault<ISectionWithStringKey
*>,2>::~BaseWrapper<ISectionWithStringKey
*,FunctionBase<ISectionWithStringKey *,&DoNothing<ISectionWithStringKey
*>,&DoTheRelease<ISectionWithStringKey>,2>,0,&CompareDefault<ISectionWithStringKey
*>,2>+0x30, calling mscorwks!_EH_epilog3
03b8f3dc 79e7f1da mscorwks!Wrapper<IMetaDataAssemblyEmit
*,&DoNothing<IMetaDataAssemblyEmit
*>,&DoTheRelease<IMetaDataAssemblyEmit>,0,&CompareDefault<IMetaDataAssemblyEmit
*>,2>::~Wrapper<IMetaDataAssemblyEmit *,&DoNothing<IMetaDataAssemblyEmit
*>,&DoTheRelease<IMetaDataAssemblyEmit>,0,&CompareDefault<IMetaDataAssemblyEmit

*>,2>+0x1d, calling mscorwks!_EH_epilog3

03b8f404 79e81d33 mscorwks!FusionBind::~FusionBind+0x62, calling
mscorwks!_EH_epilog3
03b8f428 79e81d33 mscorwks!FusionBind::~FusionBind+0x62, calling
mscorwks!_EH_epilog3
03b8f42c 79e85130 mscorwks!Holder<void
*,&DoAcquireCheckpoint,&DoReleaseCheckpoint,0,&CompareDefault<void
*>,2>::~Holder<void
*,&DoAcquireCheckpoint,&DoReleaseCheckpoint,0,&CompareDefault<void

*>,2>+0x2b, calling mscorwks!_EH_epilog3

03b8f450 79f336b9 mscorwks!AssemblyNative::Load+0x298, calling
mscorwks!Frame::Pop
03b8f454 79f336c1 mscorwks!AssemblyNative::Load+0x2a0, calling
mscorwks!HelperMethodFrameRestoreState
03b8f498 79f334e1 mscorwks!AssemblyNative::Load+0x35, calling
mscorwks!LazyMachStateCaptureState
03b8f554 7936f9d1 (MethodDesc 0x7913fcf8 +0x179
System.Security.Permissions.FileIOPermission.AddPathList(System.Security.Permissions.FileIOPermissionAccess,
System.Security.AccessControl.AccessControlActions, System.String[],
Boolean, Boolean, Boolean)), calling (MethodDesc 0x7924c898 +0
System.Security.Util.StringExpressionSet.AddExpressions(System.Collections.ArrayList,
Boolean))
03b8f584 7935e230 (MethodDesc 0x7913c8a0 +0xd4
System.Reflection.Assembly.InternalLoad(System.Reflection.AssemblyName,
System.Security.Policy.Evidence, System.Threading.StackCrawlMark ByRef,
Boolean)), calling mscorwks!AssemblyNative::Load
03b8f594 7935e23e (MethodDesc 0x7913c8a0 +0xe2
System.Reflection.Assembly.InternalLoad(System.Reflection.AssemblyName,
System.Security.Policy.Evidence, System.Threading.StackCrawlMark ByRef,
Boolean)), calling
mscorwks!DefaultMarshalOverrides<OleColorMarshalerBase>::UnmarshalNativeToCLRByrefIn
03b8f5b8 7939b70c (MethodDesc 0x7923d158 +0x58
System.Reflection.Assembly.InternalLoadFrom(System.String,
System.Security.Policy.Evidence, Byte[],
System.Configuration.Assemblies.AssemblyHashAlgorithm, Boolean,
System.Threading.StackCrawlMark ByRef)), calling (MethodDesc 0x7913c8a0 +0
System.Reflection.Assembly.InternalLoad(System.Reflection.AssemblyName,
System.Security.Policy.Evidence, System.Threading.StackCrawlMark ByRef,
Boolean))
03b8f5d4 7939b6a9 (MethodDesc 0x7923d148 +0x1d
System.Reflection.Assembly.LoadFrom(System.String,
System.Security.Policy.Evidence)), calling (MethodDesc 0x7923d158 +0
System.Reflection.Assembly.InternalLoadFrom(System.String,
System.Security.Policy.Evidence, Byte[],
System.Configuration.Assemblies.AssemblyHashAlgorithm, Boolean,
System.Threading.StackCrawlMark ByRef))
03b8f5e8 79399956 (MethodDesc 0x7913c2e0 +0x32
System.AppDomain.ExecuteAssembly(System.String,
System.Security.Policy.Evidence, System.String[])), calling
mscorwks!AppDomainNative::ExecuteAssembly
03b8f5fc 00cb11ab (MethodDesc 0x963fd8 +0x2b
Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly())
03b8f60c 793d7a7b (MethodDesc 0x79254470 +0x3b
System.Threading.ThreadHelper.ThreadStart_Context(System.Object))
03b8f62c 793d7a7b (MethodDesc 0x79254470 +0x3b
System.Threading.ThreadHelper.ThreadStart_Context(System.Object))
03b8f634 793683dd (MethodDesc 0x7913f3d0 +0x81
System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext,
System.Threading.ContextCallback, System.Object))
03b8f648 793d7b5c (MethodDesc 0x79254480 +0x40
System.Threading.ThreadHelper.ThreadStart()), calling (MethodDesc 0x7913f3d0
+0 System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext,
System.Threading.ContextCallback, System.Object))
03b8f660 79e88f63 mscorwks!CallDescrWorker+0x33
03b8f670 79e88ee4 mscorwks!CallDescrWorkerWithHandler+0xa3, calling
mscorwks!CallDescrWorker
03b8f6f0 79e88e31 mscorwks!MethodDesc::CallDescr+0x19c, calling
mscorwks!CallDescrWorkerWithHandler
03b8f72c 79e88db3 mscorwks!MethodDesc::CallDescr+0xaf, calling
mscorwks!ClrSafeInt<unsigned int>::addition
03b8f738 79e88dc3 mscorwks!MethodDesc::CallDescr+0xbb, calling
mscorwks!_alloca_probe_16
03b8f798 7c91056d ntdll!RtlFreeHeap+0x647, calling ntdll!_SEH_epilog
03b8f79c 79e783ca mscorwks!EEHeapFree+0x83, calling ntdll!RtlFreeHeap
03b8f7a8 79e783e6 mscorwks!EEHeapFree+0xa5, calling mscorwks!_EH_epilog3
03b8f7c0 7c910732 ntdll!RtlpAllocateFromHeapLookaside+0x42, calling
ntdll!_SEH_epilog
03b8f7d0 79e783e6 mscorwks!EEHeapFree+0xa5, calling mscorwks!_EH_epilog3
03b8f7d4 79e7839d mscorwks!EEHeapFreeInProcessHeap+0x21, calling
mscorwks!EEHeapFree
03b8f7e8 79e88d3b mscorwks!MethodDesc::CallDescr+0x1f, calling
mscorwks!_alloca_probe_16
03b8f82c 79e88d19 mscorwks!MethodDesc::CallTargetWorker+0x20, calling
mscorwks!MethodDesc::CallDescr
03b8f844 79e88cf6 mscorwks!MethodDescCallSite::Call+0x18, calling
mscorwks!MethodDesc::CallTargetWorker
03b8f858 7a07d585 mscorwks!ThreadNative::KickOffThread_Worker+0x15d, calling
mscorwks!MethodDescCallSite::Call
03b8f88c 77e7610c RPCRT4!rc4_safe+0x2f, calling RPCRT4!rc4
03b8f8ac 77e76098 RPCRT4!GenerateRandomNumber+0x8d, calling RPCRT4!rc4_safe
03b8f8f0 7c919bd3 ntdll!LdrpSnapThunk+0xbd, calling ntdll!LdrpNameToOrdinal
03b8f900 7c910833 ntdll!RtlpImageNtHeader+0x56, calling ntdll!_SEH_epilog
03b8f934 7e41fecc USER32!_CreateWindowEx+0x1ed, calling
USER32!VerNtUserCreateWindowEx
03b8f94c 79e74411 mscorwks!ClrFlsSetValue+0x57, calling mscorwks!_EH_epilog3
03b8f974 79e74411 mscorwks!ClrFlsSetValue+0x57, calling mscorwks!_EH_epilog3
03b8f978 79e74435 mscorwks!DecCantStopCount+0x10, calling
mscorwks!ClrFlsSetValue
03b8f984 79e74753 mscorwks!CrstBase::Leave+0x96, calling
mscorwks!_EH_epilog3
03b8fa00 7c91056d ntdll!RtlFreeHeap+0x647, calling ntdll!_SEH_epilog
03b8fa04 79e783ca mscorwks!EEHeapFree+0x83, calling ntdll!RtlFreeHeap
03b8fa10 79e783e6 mscorwks!EEHeapFree+0xa5, calling mscorwks!_EH_epilog3
03b8fa28 7c910732 ntdll!RtlpAllocateFromHeapLookaside+0x42, calling
ntdll!_SEH_epilog
03b8fa38 79e783e6 mscorwks!EEHeapFree+0xa5, calling mscorwks!_EH_epilog3
03b8fa3c 79e7839d mscorwks!EEHeapFreeInProcessHeap+0x21, calling
mscorwks!EEHeapFree
03b8fa5c 79ecb4a4 mscorwks!Thread::UserResumeThread+0xfb
03b8fa6c 79ecb442 mscorwks!Thread::DoADCallBack+0x355, calling
mscorwks!Thread::UserResumeThread+0xae
03b8fb00 79ecb364 mscorwks!Thread::DoADCallBack+0x541, calling
mscorwks!Thread::DoADCallBack+0x2a5
03b8fb3c 7a0e1b7e mscorwks!Thread::DoADCallBack+0x575, calling
mscorwks!Thread::DoADCallBack+0x4d4
03b8fb64 7a0e1b95 mscorwks!ManagedThreadBase::KickOff+0x13, calling
mscorwks!Thread::DoADCallBack+0x550
03b8fb78 7a07f7b3 mscorwks!ThreadNative::KickOffThread+0x230, calling
mscorwks!ManagedThreadBase::KickOff
03b8fba4 79e783e6 mscorwks!EEHeapFree+0xa5, calling mscorwks!_EH_epilog3
03b8fc14 79ecb00b mscorwks!Thread::intermediateThreadProc+0x49
03b8fc38 7c918e94 ntdll!LdrpInitializeThread+0xdf, calling
ntdll!RtlDeactivateActivationContextUnsafeFast
03b8fc40 7c918f87 ntdll!LdrpInitializeThread+0x13b, calling
ntdll!_SEH_epilog
03b8fca0 7c918e74 ntdll!_LdrpInitialize+0x25b, calling
ntdll!RtlLeaveCriticalSection
03b8fca4 7c90e8c4 ntdll!ZwTestAlert+0xc
03b8fca8 7c918dfa ntdll!_LdrpInitialize+0x246, calling ntdll!_SEH_epilog
03b8fd18 7c918dfa ntdll!_LdrpInitialize+0x246, calling ntdll!_SEH_epilog
03b8fd1c 7c90d625 ntdll!NtContinue+0xc
03b8fd20 7c90eacf ntdll!KiUserApcDispatcher+0xf, calling ntdll!ZwContinue
03b8ffa0 79ecaff9 mscorwks!Thread::intermediateThreadProc+0x37, calling
mscorwks!_alloca_probe_16
03b8ffb4 7c80b683 KERNEL32!BaseThreadStart+0x37


Oleg Starodumov

unread,
Jun 5, 2007, 1:03:51 PM6/5/07
to

It looks like by some reason the exception filter installed by .NET runtime
refuses to handle the exception. I can't yet tell why. Some questions:

- Does this problem happen with only this particular application,
or with any other application on this system?
- If the latter, does it happen with simple, wizard-generated application?
- Does it happen with any type of .NET exception? (Try to throw a hard-coded
exception in the application)
- Do breakpoints in the debugger work, and is it possible to single-step through
the application's code in the debugger? (especially through the function that
later raises the exception)

Oleg

Oleg Starodumov

unread,
Jun 5, 2007, 4:39:44 PM6/5/07
to

And one more question:
What will be reported by the following command in WinDbg:
(again, while the application is still showing the message)

dd mscorwks!g_fForbidEnterEE L1

(you don't have to load SOS this time, so the simplest sequence of commands
could be:

.symfix c:\symbols
.reload
dd mscorwks!g_fForbidEnterEE L1

Oleg

"Oleg Starodumov" <com-dot-debuginfo-at-oleg> wrote in message news:uW7DCO5...@TK2MSFTNGP05.phx.gbl...

Ante Maric

unread,
Jun 6, 2007, 2:36:21 AM6/6/07
to
It looks like i know what is causing this, but also can't tell why.

If i throw a hard-coded exception before InitializeComponent() method
exception filter handles the exception and i get expected exception
description window. But if do that any time after InitializeComponent()
method exception is not caught. My first tought was that it must be some
control that is causing that. So naturaly i first removed
AxShockwaveFlashObjects.AxShockwaveFlash control that i use to play swf
animation and symptoms are gone!

I am not sure if answer to your questions could help to identify why is this
happening but i'll answer the questions anyway. I could add control to
application when application is almost done to avoid this problem in
development time, but i am already not using full screen ability because
when i close application in debug time Visual Studio becomes topmost window
and IntelliSense doesn't show until i restart Visual Studio.

Answers:
- It happens to application that use
AxShockwaveFlashObjects.AxShockwaveFlash control.
- Breakpoints work and it is possible to single-step through code anywhere
in application, right to the line where exception is thrown


Ante Maric

unread,
Jun 6, 2007, 2:42:02 AM6/6/07
to
The command dd mscorwks!g_fForbidEnterEE L1 returns this :
7a38d5e4 00000000


Oleg Starodumov

unread,
Jun 6, 2007, 4:00:22 AM6/6/07
to

It's a good find. My first guess would be that the control installs
its own custom filter for unhandled exceptions, and disables .NET runtime's one
(the latter is responsible for reporting unhandled exceptions to the debugger).

Try the following code around InitializeComponent:

IntPtr SaveFilter = SetUnhandledExceptionFilter(IntPtr.Zero);
InitializeComponent();
SetUnhandledExceptionFilter(SaveFilter);

P/Invoke signature is like this:
[DllImport("kernel32.dll")]
static extern IntPtr SetUnhandledExceptionFilter(IntPtr lpFilter);

With this code, will the debugger start reporting unhandled exceptions
thrown _after_ InitializeComponent has completed?

Oleg

Ante Maric

unread,
Jun 6, 2007, 4:49:35 AM6/6/07
to
I'm not sure if anyone told you that before, but you are DEBUGGING
MASTER!!!!!

It works!!!!! .NET runtime exception filter is back in the game!

Thank you very much for your time and effort!!!!

"Oleg Starodumov" <com-dot-debuginfo-at-oleg> wrote in message

news:up35ADBq...@TK2MSFTNGP02.phx.gbl...

Oleg Starodumov

unread,
Jun 6, 2007, 6:02:07 AM6/6/07
to

Thanks :)

One more thing - try to narrow down the scope of the two calls
to SetUnhandledExceptionFilter (because the first of our two calls
also in fact disables the .NET filter, and the second one restores it).
It's best to make these two calls around the initialization code of
the problematic control, somewhere inside InitializeComponent.

Oleg

Ante Maric

unread,
Jun 6, 2007, 7:28:36 AM6/6/07
to
That whould be good, but code inside InitializeComponent() is controlled by
designer, so any change will be deleted once designer put his hands on the
code (every time when i open designe view).

But since that code is designer responsibility, that should not be the place
to expect exceptions.

"Oleg Starodumov" <com-dot-debuginfo-at-oleg> wrote in message

news:uaEZCHCq...@TK2MSFTNGP03.phx.gbl...

0 new messages