Delphi 7 IDE-列表读取访问中的索引超出范围

Delphi 7 IDE-列表读取访问中的索引超出范围,delphi,ide,delphi-7,Delphi,Ide,Delphi 7,我的一个delphi项目在关闭IDE时产生此错误消息 注意这与“列表索引超出范围(0)”错误不同 然后它总是显示另一个错误:“无效指针操作” 你知道我如何找到它的来源吗?“无效指针操作”意味着你释放了不属于你的内存。这三件事之一就是原因: 您的程序释放了以前已经释放过一次的内容 您的程序释放了一些一开始从未分配过的内容 您的程序释放了使用其他内存管理器分配的某些内容 “无效指针操作”意味着您释放了不属于您的内存。这三件事之一就是原因: 您的程序释放了以前已经释放过一次的内容 您的程序释放

我的一个delphi项目在关闭IDE时产生此错误消息

注意这与“列表索引超出范围(0)”错误不同

然后它总是显示另一个错误:“无效指针操作”

你知道我如何找到它的来源吗?

“无效指针操作”意味着你释放了不属于你的内存。这三件事之一就是原因:

  • 您的程序释放了以前已经释放过一次的内容
  • 您的程序释放了一些一开始从未分配过的内容
  • 您的程序释放了使用其他内存管理器分配的某些内容
    • “无效指针操作”意味着您释放了不属于您的内存。这三件事之一就是原因:

      • 您的程序释放了以前已经释放过一次的内容
      • 您的程序释放了一些一开始从未分配过的内容
      • 您的程序释放了使用其他内存管理器分配的某些内容

      听起来要么像IDE错误,要么(更有可能)像组件中的错误

      修复并加速IDE

      安装(我想Delphi7的最新更新是7.1)

      下载并安装

      它可能会解决一些问题,事实上会使您的IDE更快。值得一试

      组件问题

      能否卸载所有已安装的第三方组件

      然后逐个重新安装自定义软件包,检查哪一个会触发错误


      某些第三方组件的IDE编辑器部分可能在IDE关闭时出现错误。

      听起来像IDE错误,或者(更可能)像组件中的错误

      修复并加速IDE

      安装(我想Delphi7的最新更新是7.1)

      下载并安装

      它可能会解决一些问题,事实上会使您的IDE更快。值得一试

      组件问题

      能否卸载所有已安装的第三方组件

      然后逐个重新安装自定义软件包,检查哪一个会触发错误



      某些第三方组件的IDE编辑器部分可能在IDE关闭时出现一些错误。

      您可以安装。然后,它会显示有关异常的详细信息(callstack等),您可以找到源代码。

      您可以安装。然后,它会显示有关异常的详细信息(callstack等),您可能能够找到源代码。

      尝试在自己的调试器中运行Delphi IDE(菜单
      运行
      加载进程
      ,然后在您的情况下选择IDE可执行文件-delphi32.exe)。然后用这个项目重现问题。您可能会得到问题所在的提示。

      尝试在自己的调试器中运行Delphi IDE(菜单
      Run
      Load Process
      ,然后在您的情况下选择IDE可执行文件-delphi32.exe)。然后用这个项目重现问题。您可能会得到问题所在位置的提示。

      但它确实是我的程序吗?这种情况发生在关闭IDE中的项目(或关闭IDE)时,而不是在应用程序运行时关闭应用程序。但它确实是我的程序吗?这发生在关闭IDE中的项目(或关闭IDE)时,而不是关闭正在运行的应用程序时。谢谢A.Bouchez。。。我已经做了前两个,但是您可能已经了解了关于第三方组件的一些内容。如果有机会,我将尝试卸载组件包。我不赞成Delphi加速建议,它很可能会添加问题或屏蔽问题,而且不太可能有助于查找问题。@Downvoter Delphi加速建议不添加问题,但解决一些问题,然后继续。如Andy的页面所述:“并非DelphiSpeedUp.dll中的所有访问冲突都是DelphiSpeedUp中的错误。实际上,RTL包中的许多异常现在都在DelphiSpeedUp.dll中抛出,因为RTL函数被DelphiSpeedUp函数替换,错误的参数(如零指针、无效指针等)现在导致替换代码中出现访问冲突。错误的函数调用仍然是错误的函数调用。“@Downvoter一些具体细节如何?我从安德烈亚斯提供的所有工具中得到的只有快乐,你说的话我一个字也听不懂。别担心,谢谢你,A.Bouchez。。。我已经做了前两个,但是您可能已经了解了关于第三方组件的一些内容。如果有机会,我将尝试卸载组件包。我不赞成Delphi加速建议,它很可能会添加问题或屏蔽问题,而且不太可能有助于查找问题。@Downvoter Delphi加速建议不添加问题,但解决一些问题,然后继续。如Andy的页面所述:“并非DelphiSpeedUp.dll中的所有访问冲突都是DelphiSpeedUp中的错误。实际上,RTL包中的许多异常现在都在DelphiSpeedUp.dll中抛出,因为RTL函数被DelphiSpeedUp函数替换,错误的参数(如零指针、无效指针等)现在导致替换代码中出现访问冲突。错误的函数调用仍然是错误的函数调用。“@Downvoter一些具体细节如何?我从安德烈亚斯提供的所有工具中得到的只有快乐,你说的话我一个字也听不懂。不用担心,我已经有了EurekaLog,不幸的是它没有捕获到这个异常,因为它是在结束时通过IDE生成的(我假设EurekaLog是unloaded@Simon:MadExcept可配置为捕获大多数(不是全部)IDE中也有异常。我已经有了EurekaLog,不幸的是它没有捕捉到这个异常,因为它是在结束时通过IDE生成的(我假设EurekaLog是unloaded@Simon:疯狂