关于“尝试读取或写入受保护的内存。这通常指示其他内存已损坏。”的解决

转载于:http://www.cnblogs.com/jerrmy/p/3485120.html

先来介绍一下出现这个错误的原因。看到园子中有人写了Web Api 2.0的博文,自己也想学习一下这个技术,于是就去了Microsoft官网看了一下关于web api的介绍,之后就有自己动手写个demo的冲动了,由于自己安装的是vs2012,需要升级到sp4,但是自己又不想升级到sp4,关键还是自己想体验一下vs2013,于是乎就苦苦等了2个小时,vs2013终于下载好了,安装好之后,激动人心的时刻终于到来了,马上就可以自己写一个web api的demo了,而且2013的速度比2012好,按照微软官网的介绍,终于写好了,自己还是非常的兴奋,但悲伤的故事也开始了。

  当自己与平时一样打开vs2012和熟悉的项目时,一样的生成解决方案,一样的输入系统的帐号和密码,突然间vs自带的开发者服务器的进程被杀死了,这真的吓到我了,简直不相信自己的眼睛呀,昨天明明好好的呀,又试了一次,还是一样的结果,之后就进行各种调试,发现是在连接数据库时出了问题,出现了如下的错误:关于“尝试读取或写入受保护的内存。这通常指示其他内存已损坏。”的解决_第1张图片

最后自己实在没有办法了,就去问了度娘和谷哥,看了一下搜索结果,挺高兴的,因为很多人都出现了同样的错误,在仔细看,每个人的结果都不一样,而且大多数是和调用dll有关,最恐怖的是其他人连接数据库都是正常的,而且连接本机的数据库也是正常的,种种的迹象表明应该是自己的系统有问题了。突然间想起了自己是在安装了vs2013后才出现了这个问题,于是我又把vs2013卸载了,卸载了之后发现还是不行,真是快把我弄疯了,这样不行,那我就来次系统的还原吧,我将安装vs2013时安装的所有插件都删除了,最后奇迹出现了,远程连接数据库又可以用了。

  之后不停的琢磨,发现原来是.NET Framework 4.5.1的原因,卸载时候就好了。但是现在不知道为什么会这样,知道的朋友还请指示一下。


二、另高手的解决方案

安装vs2013以后,链接数据库总是报内存损坏,无法写入的错误,

解决方案很简单

用管理员身份运行CMD,输入netsh winsock reset并回车(注意,必须是已管理员身份运行,这个重置LSP连接)

http://social.msdn.microsoft.com/Forums/zh-CN/030f66b5-e4d5-405a-a619-f6d4546e971c/vs2013win7-net-4-csql-server2000?forum=adonetzhchs


你可能感兴趣的:(关于“尝试读取或写入受保护的内存。这通常指示其他内存已损坏。”的解决)