2013-04-25 44 views
0

我正在使用Microsoft Visual Web Developer 2010 Express构建从数据库中提取数据以填充下拉列表的网页相关选项。当我在开发人员调试页面时,一切都很顺利,但是当我使用IE浏览器测试生产页面时,我得到一个Visual Studio Just-In-Time Debugger窗口,其中提示“w3wp.exe中发生了未处理的win32异常[ #####]“其中#####是每次出现错误时都会更改的数字。经过一番研究后,我发现当程序试图调用任何OdbcConnection.Open()方法时发生错误。以下是DebugDiag的一些异常信息。w3wp.exe在调用[System.Data.Odbc]时崩溃:: OdbcConnection.Open()

异常信息:

In w3wp__TTFCUAppPages__PID__1704__Date__04_25_2013__Time_12_37_29PM__536__Second_Chance_Exception_E0434352.dmp the assembly instruction at KERNELBASE!RaiseException+58 in C:\Windows\System32\KERNELBASE.dll from Microsoft Corporation has caused a CLR Exception on thread 23with the following error information: 



    Type: 

System.AccessViolationException 



    Message: 

Attempted to read or write protected memory. This is often an indication that other memory is corrupt. 

这里是调用堆栈:

.NET Call Stack 



Function 


Full Call Stack 



Function 

    Arg 1 

    Arg 2 

    Arg 3 

    Arg 4 

    Source 



KERNELBASE!RaiseException+58 

    e0434352 

    00000001 

    00000005 

    058bf568 





clr!RaiseTheExceptionInternalOnly+276 

    181aba38 

    00000000 

    00000000 

    181aba38 





clr!RaiseTheException+87 

    181aba38 

    00000000 

    00000004 

    058bf760 





clr!RaiseTheException+fe 

    00000000 

    00000004 

    00000004 

    5df9e75e 





clr!RealCOMPlusThrow+3d 

    181aba38 

    00000000 

    00000004 

    058bf76c 





clr!RealCOMPlusThrow+12 

    181aba38 

    00000004 

    56dd0faf 

    6d7e95d4 





clr!Thread::RaiseCrossContextException+3e0 

    00000000 

    058bf7bc 

    56dd0093 

    03d1ea38 





clr!Thread::DoADCallBack+2f3 

    00000002 

    6d98fe4e 

    058bf878 

    00000001 





clr!UM2MDoADCallBack+c0 

    00b44760 

    ffffffff 

    058bf8e0 

    00000010 





0x00a51ff8 

    00000000 

    00ac74a4 

    00000003 

    0000000c 





webengine4!W3_MGD_HANDLER::ProcessNotification+5b 

    00ac74a4 

    69f81398 

    058bf95c 

    6d7878af 





webengine4!ProcessNotificationCallback+36 

    00ac74a4 

    56dd019f 

    0000ffff 

    00040004 





clr!UnManagedPerAppDomainTPCount::DispatchWorkItem+195 

    058bf9bf 

    058bf9be 

    56dd010f 

    00000000 





clr!ThreadpoolMgr::NewWorkerThreadStart+20b 

    00000000 

    56dd02f7 

    00000000 

    6d788499 





clr!ThreadpoolMgr::WorkerThreadStart+3d1 

    00000000 

    76f637fa 

    76f637b8 

    00000000 





clr!Thread::intermediateThreadProc+4b 

    00b858b8 

    058bfd98 

    76f6377b 

    00b858b8 





kernel32!BaseThreadInitThunk+e 

    00b858b8 

    7dd9933f 

    00000000 

    00000000 





ntdll!__RtlUserThreadStart+70 

    6d877698 

    00b858b8 

    00000000 

    00000000 





ntdll!_RtlUserThreadStart+1b 

    6d877698 

    00b858b8 

    00000000 

    00000000 
+0

解决方案是将ASPNET内置用户添加到本地DB2ADMNS和DB2USERS组。 开始菜单 右键单击“计算机” 选择“管理” 展开“本地用户和组” 点击“组” 找到“DB2ADMNS”和“DB2USERS”群体。 将“ASPNET”用户添加到每个组。 – user2320861 2013-04-30 22:03:26

+0

你可以做出答案,并接受它。 – Tshepang 2013-12-12 06:33:33

回答

0

的解决方案是将ASPNET添加内置用户在本地DB2ADMNS和DB2USERS组。开始菜单右键单击“计算机”选择“管理”展开“本地用户和组”单击“组”查找“DB2ADMNS”和“DB2USERS”组。将“ASPNET”用户添加到每个这些组。