AV在IDE中打开任何项目或在Delphi 7中创建新项目

问题描述:

经过多年的无故障使用后,Delphi 7现在在模块“vclx70.bpl”中的地址 40233A3E处发生访问冲突。阅读地址0000021C。AV在IDE中打开任何项目或在Delphi 7中创建新项目

启动IDE时,默认的空白项目和单位/窗体出现并编译并运行良好。

我正在开发在Windows 7(x64)上运行的Windows应用程序。

我在许多个月中都没有安装任何新的软件包或工具。

我停了下来,死在水里,无法工作。

不是一个完整的裂口,再重新安装(这需要很多时间......)

编辑其他任何建议:我未安装和重新安装德尔福7。现在我越来越访问冲突vcl70 .bpl。我原以为卸载D7会彻底删除它的所有库等等...在卸载D7后我应该手动删除哪些文件夹?

+0

你最近在那台机器上发生了什么变化? – 2011-03-31 15:03:20

+0

删除HKLM \ Software \ Borland \ Delphi和HKCU \ Software \ Borland \ Delphi下的整个注册表分支(如果D7是唯一安装的版本 - 如果您有更多的版本,只需删除7.0分支)。这听起来越来越像第三方组件问题。 – 2011-03-31 16:45:36

问题固定

MM工具的格里特Beuze建议在其他地方(和主要设备改造避免!):

Remove all .dsk (project desktop) files for the project you try to load, 
Temp remove all *.dst (desktop files) from C:\Program Files\Borland\Delphi7\Bin 

后执行这些步骤,问题似乎已经修复。

+0

优秀!你应该接受这个答案,所以很明显它已经解决了。我忘记了.dsk文件和Delphi版本 2011-03-31 17:52:25

我的第一个建议是使用XP Mode或其他VM基础结构在Windows 7上运行这样一个旧的Delphi版本(我这样做)。

另一个潜在的方法是使用Windows 7中的兼容性设置将其设置为XP,并免除系统可能强加的DEP(数据执行阻止)策略中的Delphi 7进程。我在使用旧版Borland IDE和VS 2003启用DEP方面遇到了一些问题。

+0

我想我没有清楚地说明我的平台。多年来,我一直在运行Windows 7(x64)的机器上运行良好。 – RobertFrank 2011-03-31 14:02:23

+0

@Robert Frank:但我们正在谈论一个非常古老的计划。至少在Delphi IDE中使用兼容性垫片的XP模式并确保DEP关闭仍然相关。事实上,在我安装了一些软件之后,我被后者咬了一口,这些软件改变了默认的DEP策略来强制执行,而在我的配置中它应该被选择退出。当然,它可能仍然是不同的。但去年的DLL布局错误也引发了一些影响与旧程序兼容性的问题。 – 0xC0000022L 2011-03-31 14:26:56

在低内存地址读取通常是第三方组件中的问题。但是,你说你几个月没有安装任何新东西。

奇怪的另一件事是,你得到的错误在vclx70,这是CLX库之一。您是否正在使用CLX(剩余的跨平台 - Kylix)窗体或对话框进行任何操作?

如果没有,你可以做一个搜索在您的来源为QDialogsQForms,或%PROGRAMFILES%\Borland\Delphi7\Source\Clx任何其他单位,并看看是否有误加入,你不打算是在捉弄CLX到项目中。如果是这样,请将其更改为VCL版本(只需从源中的单元名称前删除“Q”)即可。编辑:你可以尝试进入注册表(D7将HKCU\Software\Borland\Delphi\7.0),并临时将Known IDE Packages中的delphiCLXide条目的名称更改为其他名称(在名称前加上下划线或其他内容)。然后启动IDE。您应该收到一条关于Delphi无法加载软件包的错误消息,并询问您是否想在将来尝试再次加载它。回答“是”,并让IDE继续加载。然后再试一次你的项目,看看会发生什么。

上述步骤暂时从IDE设计器中加载删除CLX。 (不用担心,如果问题不存在,只需重新命名该键即可将其恢复;如果不能恢复,请确保IDE未在Disabled Packages条目中添加条目;如果确实如此,只需将其删除即可。)

如果可以使用,则可以打开项目的项目选项(.DOF)文件,并从Packages列表中删除CLX库。这可以防止在加载项目时将其包含在内。 一旦你确定问题是否真正

+0

谢谢,肯,建议。不,我从来没有碰过CLX的东西。即使我尝试从头开始创建新项目(文件,新建,应用程序...) – RobertFrank 2011-03-31 14:16:58

+0

尝试删除所有只保留vcl70的软件包时,会发生此问题。 – 2011-03-31 14:38:13