随笔-145  评论-173  文章-70  trackbacks-0
最开始安装了VC6.0,VS2005没有任何问题,之后安装了VS2008,问题就出来了,每次用VC6.0打开或添加项目时出现【MSDEV.EXE-应用程序错误"0x73d311c7"指令引用的"0x00000004"内存,该内存不能为"read"】,开始没有发现是哪里什么问题,后面因为必须用VC6.0开发,不得不试了好多版本,都不行,于是只好重新安装系统。
      第二次开始安装了VC6.0和VS2008,运行起来没有问题,当我安装上office2007的时候,上面的问题又出来了,于是卸掉office2007,VC6.0又正常了。于是仔细的观察了一下office2007和VS2005有什么相似的,终于发现了出现问题的原因。
      VS2005和office2007里面都包括组件.net framework2.0,而VS2008包括的是.net framework3.5,当主机上同时有.net framework 2.0和.net framework 3.5的时候,会造成VC6.0编译环境的改变,发生不可预料的错误,最根本的原因那当然得去问微软了。
      解决办法:安装不带.net framework2.0的精简版office2007(已经试过,我正在用),还有就是网上一种曲线救国的方法,下面分享一下:
      首先去下载一个FileTool(http://download.microsoft.com/download/vc60ent/s1/6.0/w9xnt4/en-us/filetool.exe 下载后解压缩),下载过来是一个C++原始文件,需要通过VC编译一下产生一个 FileTool.dll
将这个插件复制到
X:\Program Files\Microsoft Visual Studio\Common\MSDev98\AddIns
重新打开VC6,Tools->Customize->Add-ins and Macro Files,选中FileTool Developer Studio Add-in即可。
此时打开VC6会有一个浮动工具栏(A O),点击A就是添加文件到工程,点击O就是打开文件。是不是很怪啊,竟然做了一个插件进来,并没有对原先的冲突进行改进。
以下的错误也随之解决:
Access Violation (0xC0000005) in DEVSHL.DLL at 0x5003eaed.
DevShl.Dll referenced memory at 0x0000000. The memory could not be read.
posted on 2009-11-27 21:42 deercoder 阅读(1144) 评论(0)  编辑 收藏 引用 所属分类: 常见编译器错误解决办法

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理