如题:
    我用的数据库是Oracle 11g,在用TransactionScope处理流程事务的时候遇到出错,try...catch获取的异常提示为“尝试读取或写入受保护的内存。这通常指示其他内存已损坏。”在即时窗口中出现的信息是:“在 System.AccessViolationException 中第一次偶然出现的“System.Data.OracleClient.dll”类型的异常”。
    我把事务注释掉后,调试一点问题都没有。Oracle服务器和我本机的msdtc服务是已启动的。
    说明:Oracle服务器和我本机都是Windows Server 2003,工具是vs2008;
    在msdtc中的“安全设置”中的配置如下(“√”表示选中的):
    [√] 网络DTC访问
         客户端和管理
         [√] 允许远程客户端         [√] 允许远程管理
         事务管理器通信
         [√] 允许入站               [√] 允许出站
              [√]要求对双方进行验证
         [√]启用XA事务     DTC登录帐户
      帐户:NT Authority\NetworkService    一时我也不怎么明白其中原由,还请各位帮帮忙,出出主意。

解决方案 »

  1.   

    换到ORACLE版下去吧,不过就这点信息,估计也不太好诊断。
      

  2.   

    我在测试项目中"Exception"错误信息如下:
     在 WebAppTest.WebForm1.TestTransaction() 位置 D:\VS2008\TestProject\WebAppTest\WebForm1.aspx.cs:行号 52
           在 WebAppTest.WebForm1.Page_Load(Object sender, EventArgs e) 位置 D:\VS2008\TestProject\WebAppTest\WebForm1.aspx.cs:行号 28
    在 System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o, Object t, EventArgs e)
           在 System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e)
           在 System.Web.UI.Control.OnLoad(EventArgs e)
           在 System.Web.UI.Control.LoadRecursive()
           在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
      InnerException: 
      

  3.   

    碰到了很多次了,而且这种问题很抽筋,其实msdtc启动了照样可能碰到。今天,偶然的,我的也出现了,这个项目都已经做了几个月了,我自己机器上是第一次出现