2015-07-01  1,899 views 评论

VS2013 C# 开发中遇到 未处理System.AccessViolationException Message: “System.AccessViolationException”

这个问题博主已经遇到过多次,测试过程中总是到connection尝试打开的情况出现这一异常。并会导致IIS Express关闭。

调试中出现如下错误:

详细错误信息:

未处理System.AccessViolationException
Message: “System.AccessViolationException”类型的未经处理的异常在 未知模块。 中发生
其他信息: 尝试读取或写入受保护的内存。这通常指示其他内存已损坏。

error2

 

继续调试会出现IIS Express异常关闭情况,如下图:

error1

 

找到解决方案如下:

WIN7用户以管理员方式运行cmd命令行程序,并运行   netsh winsock reset

运行结果如下图所示:

error3

 

提示需要重启计算机才可完成重置  其实博主每次都没重启 也确实奏效了  如果你不巧遇到没解决这个问题 请尝试重启再试试

这是博主的解决方案,可能还有其他方式。 因为具体造成这个错误的原因博主并不太清楚。 根据netsh winsock reset的介绍来看应该是winsock协议配置异常导致错误,博主猜测可能是端口占用问题,如果不是就当我没说过`(*∩_∩*)′

 

参考来源:netsh winsock reset百科

netsh winsock reset 介绍:
netsh winsock reset,作用是重置 Winsock 目录。如果一台机器上的Winsock协议配置有问题的话将会导致网络连接等问题,就需要用netsh winsock reset命令来重置Winsock目录借以恢复网络。这个命令可以重新初始化网络环境,以解决由于软件冲突、病毒原因造成的参数错误问题。 netsh是一个能够通过命令行操作几乎所有网络相关设置的接口,比如设置IP,DNS,网卡,无线网络等,Winsock是系统内部目录,Winsock是Windows网络编程接口,winsock工作在应用层,它提供与底层传输协议无关的高层数据传输编程接口,reset是对Winsock的重置操作。当执行完winsock的命令重启计算机后,需要重新配置IP。

给我留言

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: