我使用Visual Studio 2008和开发VB.NET应用程序。 我的程序有一个奇怪的死锁问题,但只有当Internet Explorer 8打开时才会出现。VB.NET程序锁定与Internet Explorer打开
当我用另一个窗口覆盖我的表单然后发现它时,我发现它已被锁定。 我的程序没有对IE的引用,它唯一要做的事情就是使用带网址的Process.Start。
我的程序工作正常,完全按照它应该,但只有当IE不打开。
有谁知道为什么一个程序只能在IE运行时锁定?
编辑:我做了一些挖掘,我发现我的程序中有问题的线程。 我不知道是什么启动了这个线程或它的功能,但是当我杀死它时,我的程序不再冻结。该线程是CreateApplicationContext线程之一,这是该线程的堆栈跟踪中的最后几项。
6 ntkrnlpa.exe + 0x897bc
7 NTDLL.DLL!KiFastSystemCallRet
8 mscorwrks.dll!LogHelp_TerminateOnAssert + 0x61
9 mscorwrks.dll!DllUnregisterServerInternal + 0x10523
10 mscorwrks .dll!DllUnregisterServerInternal + 0x10542
11 mscorwrks.dll!StrongNameErrorInfo + 0x34387
12 mscorwrks.dll!StrongNameErrorInfo + 0x34815
13 mscorwrks.dll!CreateApplicationContext + 0xbc35
14 KERNEL32.dll中!GetModuleHandleA + 0xdf
Process Explorer的说我的程序正在使用没有CPU,也没有在挂起时抛出任何异常。
+1
你的程序与IE有什么关系?它是Winforms,WPF?它使用网络浏览器控件吗? –
2009-07-07 22:04:30