日期:2014-05-18  浏览次数:20857 次

Oracle11g在使用TransactionScope报错提示“尝试读取或写入受保护的内存。这通常指示其他内存已损坏。”
如题:
  我用的数据库是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

  一时我也不怎么明白其中原由,还请各位帮帮忙,出出主意。

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