急!VC++6.0运行程序出错0x100345cc指令引用的0x0152d000n内存,该内存不能为read。求大神指点,谢谢各位

作者&投稿:楚玛 (若有异议请与网页底部的电邮联系)
用VC++6.0运行程序的时候出现0x0040105e指令引用的 0xccccccc 内存 该内存不能 read的对话框?求解 谢谢~

1 可能是数组超界,也可能是指针超界,还有可能是变量没有赋初值。
2 建议将代码贴出来,也许能找到确切原因。

最近挺多网友出现这样的问题,建议了解一下是如何产生内存不能读,以后碰到类似的才不会困惑。一般如果是玩游戏出现有可能该游戏软件冲突,建议卸载重新安装。
如果你是打开IE出现的有可能是ie应用程序访问内存出错或者某些文件丢失造成的
解决办法:
试用命令排除
开始-运行- 输入cmd-- 回车,在命令提示符下输入下面命令
for %1 in (%windir%\system32\*.dll) do regsvr32.exe /s %1回车。
完成后,在输入下面的
for %i in (%windir%\system32\*.ocx) do regsvr32.exe /s %i 回车。
如果怕输入错误,可以复制这两条指令,然后在命令提示符后击鼠标右键,打“粘贴”,回车,耐心等待,直到屏幕滚动停止为止。【重启电脑】
◆◆
运行regedit进入注册表,
在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellExecuteHooks
下,应该只有一个正常的键值{AEB6717E-7E19-11d0-97EE-00C04FD91972},
将其他的删除。【如果还有一个(默认)不用管它,一般它为空。】

如果不能解决最好是卸载重新更新ie浏览器, 平时注意定期清理系统垃圾,ie缓存。

关于内存不能READ的解决方案

运行某些程序的时候,有时会出现内存错误的提示,然后该程序就关闭。
“0x????????”指令引用的“0x????????”内存。该内存不能为“read”。
“0x????????”指令引用的“0x????????”内存,该内存不能为“written”。
一般出现这个现象有方面的,一是硬件,即内存方面有问题,二是软件,这就有多方面的问题了。

故障分析

硬件方面:


一般来说,内存出现问题的可能性并不大,主要方面是:内存条坏了、内存质量有问题,还有就是2个不同牌子不同容量的内存混插,也比较容易出现不兼容的情
况,同时还要注意散热问题,特别是超频后。你可以使用MemTest 这个软件来检测一下内存,它可以彻底的检测出内存的稳定度。
假如是双内存,而且是不同品牌的内存条混插或者买了二手内存时,出现这个问题,这时,就要检查是不是内存出问题了或者和其它硬件不兼容。

软件方面:


先简单说说原理:内存有个存放数据的地方叫缓冲区,当程序把数据放在其一位置时,因为没有足够空间,就会发生溢出现象。举个例子:一个桶子只能将一斤的
水,当放入两斤的水进入时,就会溢出来。而系统则是在屏幕上表现出来。这个问题,经常出现在windows2000和XP系统上,Windows
2000/XP对硬件的要求是很苛刻的,一旦遇到资源死锁、溢出或者类似Windows
98里的非法操作,系统为保持稳定,就会出现上述情况。另外也可能是硬件设备之间的兼容性不好造成的。

内存不能为"Read"或"written"(原因以及解决方案):(【sql1981】原创答案,引用请说明原作者:sql1981,未通知原作者严禁复制本答案!!)
系统出现内存不能为"Read"或"written"的原因:

1、驱动不稳定,与系统不兼容,这最容易出现内存不能为 Read 或者文件保护

2、系统安装了一个或者多个流氓软件,这出现 IE 或者系统崩溃的机会也比较大,也有可能出现文件保护

3、系统加载的程序或者系统正在运行的程序之间有冲突,尤其是部分杀毒软件监控程序

4、系统本身存在漏洞,导致容易受到网络攻击。

5、病毒问题也是主要导致内存不能为 Read、文件保护、Explorer.exe 错误……

6、如果在玩游戏时候出现内存不能为 Read,则很大可能是显卡驱动不适合(这里的不适合有不适合该游戏、不适合电脑的显卡),也有可能是 DX9.0C 版本不够新或者不符合该游戏、显卡驱动

7、部分软件本身自身不足的问题

8、电脑硬件过热,也是导致内存不能为 Read 的原因之一。

9、电脑内存与主板兼容性不好也是导致内存不能为 Read 的致命原因!

提供几种解决方案:
1、一次运行注册所有dll,方法如下:

开始——运行,输入cmd 回车在命令提示符下输入
for %1 in (%windir%\system32\*.dll) do regsvr32.exe /s %1
这个命令你慢慢输,仔细点,输入正确的话会看到飞快地滚屏 否则……否则失败就是没这效果。回车后慢慢等(需要点时间1-2分钟) 都运行完再尝试之前的操作,看还有没有出现不能为read的现象。

2、在控制面板的添加/删除程序中看看你是否安装了微软NET.Framework,如果已经安装了,可以考虑卸载它,当然如果你以后在其它程序需要NET.Framework时候,可以再重新安装。
另外,如果你用的是ATI显卡并且你用的是SP2的补丁(一些ATI的显卡驱动需要在NET.Framework正常工作的环境下)。这种情况你可以找一款不需要NET.Framework支持的ATI显卡驱动。
如果以上两种方法并不能完全解决问题,你试着用一下“IE修复”软件,并可以查查是否有病毒之类的。
〔微软NET.Framework升级到1.1版应该没问题了〕

3、引起这个问题的原因很多。一般来讲就是给系统打上补丁和更换内存、给内存换个插槽这3种方法来解决。[系统补丁只要到Microsoft Update网站在线更新就可以了!


vc6.0是干什么用的
Microsoft Visual C++ Redistributable Package是Visual C++的运行时组件和库,很多软件,尤其是游戏所必须的 Microsoft VC++ 的环境软件,这些游戏就是用VC+编写的,所以安装很多大型游戏的时候,它也会帮你安装这些软件。如果要卸载的话可以选择9.0.0之前版本的Visual C++,因为此版本之前的库绝大多数是...

vc++6.0运行时总是出现Compiling...怎样才能停止呀,每次我都用任务管理...
说明你的程序正在运行中,当完成会显示"done",如果你等待一段时间仍然出现无法结束的状况,那么肯能你的程序选择的时间参数有问题,或者出现死循环。如果是确定正确的程序,那么可能你选择的软件有问题,在安装的过程中出现了问题,你可以卸载后重新安装。

编程vc6.0运行 全部步骤 谢谢!!!
双击打开MSDEV.EXE,选《文件》菜单、打开《新建》选项、选择《文件》选项夹,双击 C++ Source File。然后在代码编辑区输入代码。Ctrl + F7:编译,Ctrl + F5:运行。include <stdio.h> include <math.h> int main() { int res,num;do { printf("请输入一个大于1000的正整数 : ");scanf("%d...

vc6.0 运行没有结果,什么都不显示,why?
没有警告和错误,程序应该没问题,你要看到那个黑窗可以调用 system()函数 如下面的代码所示:include<stdio.h>#include <stdlib.h>int main(){ \/\/这里就可以让黑窗口停下来了。system("pause");return 0;}

Vc++6.0运行文件不存在怎么回事?
如果整个 MS VC 编译器安装、运行都没有问题的话,那就是VC编译器把源程序进行编译、链接之后保存到另外一个子目录了。可以耐心地寻找一下,肯定是可以找到你的用户运行文件的。

vc6.0运行这个程序的时候出现下面图中的问题急求解决办法,程序代码如下...
U[7] 是从U[0] ~ U[6]你的循环中当变量n = 6时,符合n<N(7)的条件,那执行循环体中的代码时,会出现 U[n+1]也就是U[7],造成内存溢出。

vc++6.0运行不了是怎么了?
对于刚刚开始的学习Vc++\/c语言的爱好者来说 ,有时候我们总会遇到一些错误,却找不出自己的错误在哪里?因此,不能不一下了。为此,对于常见的当我们执行时,却提示无法执行的时候,该如何解决?1、首先,在打开VC++6.0后,我们在创建新“文件”时,要注意,创建的不是“C\/C++Header File”,而是“...

vc6.0运行错误
这个是VC6里面 getline 的bug ,建议换成其它的赋值函数吧:cin>>mystr;

VC6.0运行老是出现该内存不能为"written"提示如下图,
这个是由于指针在vc++中没有找到相应的内存地址,原因就是你在定义变量时出错,比如:定义的数组的空间不够,使得变量超出定义范围~~没什么大不了的,不是你的电脑有事~~

VC++6.0运行程序时出现以下情况怎么回事?
这是你运行“一元二次方程用while做.exe”程序蹦出来的错误吧?如果是你自己写的程序,那么用VC++打开工程,在debug模式下按F5开始调试,然后就会出错,在出错的弹出框中点击“重试”,然后就会停止在代码有错误的地方了。

临西县19294835766: 急!VC++6.0运行程序出错0x100345cc指令引用的0x0152d000n内存,该内存不能为read.求大神指点,谢谢各位 -
褚贾美辛: 内存不能为"Read"或"written"(原因以及解决方案):(【sql1981】原创答案,引用请说明原作者:sql1981,未通知原作者严禁复制本答案!!) 系统出现内存不能为"Read"或"written"的原因:1、驱动不稳定,与系统不兼容,这...

临西县19294835766: 各位大佬知道打开软件(例vc++6.0)的时候老弹出无法打开程序0xc0000142怎么办? -
褚贾美辛: 1、进入VC6.0的安装目录找到MSDEV.exe,将该文件更名为MSDEV3.exe或别的,应该需要改一下.2、设定它的运行的兼容性,选择以windows XP SP2模式兼容,同时选择以管理员身份运行.3、问题就应该解决了.如果看了上面的还不明白,就参看百度文库中别人给出的详细说明:

临西县19294835766: win10系统打开VC++6.0时,显示电脑应用程序无法正常启动0xc0000142. -
褚贾美辛: 应用启动错误代码:0xc0000142 错误原因:部分DLL文件未能被系统注册,导致动态库调用错误.解决方法:1、按win+R调出运行,输入CMD.2、在CMD内输入“for %1 in (%windir%\system32\*.dll) do regsvr32.exe /s %1 ”等待程序运行完毕即可.

临西县19294835766: 安装vc++6.0 后打开出现错误提示.应用程序无法正常启动0xc0000142 -
褚贾美辛: 吧VC卸载了,然后再清理注册表,重新开机,吧杀毒软件和安全卫士完全关闭,然后再下载,下载后能打开vc,再把安全卫士什么的开起来

临西县19294835766: vc++6.0编写的程序,我实在看不出哪里错了.运行时总是说一个错误,零个警告.请高手指点!! -
褚贾美辛: 错误应该是 hour,min,sec变量声明放在开头移到开头,声明就可以了,c言语不支持随便放哪里声明的,但是c++支持这个很好说明,就是linux下的g++,gcc 都支持c++,c++代码声明随便放哪里都可以

临西县19294835766: vc++6.0一打开就出现MSDEV.EXE应用程序错误,无法正常启动0xc0000142 -
褚贾美辛: 一般来说,将MSDEV.EXE换成英文版的,就可以启动了.英文版的你可以在百度里找到.下载完去那个文件夹下面替换掉就行.

临西县19294835766: Visual C++ 6.0应用程序错误 -
褚贾美辛: scanf("%d",n); 改成scanf("%d",&n);

临西县19294835766: vc++6.0编的一个c++程序,显示有一个错误 -
褚贾美辛: "输入错误.还有'号,用英文字符,不是中文字符.Key写成了key if(*Key==...)少了(号.最后少了}号#include<stdio.h>#include<stdlib.h> int main(int argc, char *argv[]) { FILE *fpIn; FILE *fpOut; char *Key; int c; if (argc != 4) { printf("Usage: cryrto Key ...

临西县19294835766: vc++6.0打开时应用程序错误:“0x73d311a3”指令引用的“0x00000004”内存.该内存不能为“read.要终止程 -
褚贾美辛: 是程序的文件有损坏,把vc++6.0卸载后,重装就可以了.

临西县19294835766: 我今天刚装的vc++6.0,可是运行c程序时不知道哪里出错了,大?
褚贾美辛: 程序是没有错误的,可能是你把c++装在了其他的分区中,但是路径没有设置好,你可以工具->选项->目录里面把路径更改成你的安装路径.

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网