小编Ori*_*zer的帖子

程序在几台计算机上运行缓慢

我有一个程序,我在多台网络PC上运行.当我编译最新版本时,它在网络上的2台PC上运行得非常慢,但对其他人来说运行正常.

当我安装了额外的2GB RAM时,这曾经发生在旧的开发PC上.当我删除额外的2gb并重新编译时,它将适用于所有人.

现在,我正在使用一台全新的机器并遇到同样的问题.我重新启动后尝试重建项目,但仍然有同样的问题.

对于所有其他PC,程序加载大约3-5秒.在这两台PC上,加载时需要45秒到1.5分钟......

其中一台PC是较旧的戴尔Dimension 8200,但另一台则是较新的OptiPlex,它与网络上的其他几台PC完全相同,所以这才真正令人困惑.

现在,我不得不恢复旧版本,以便它能够为每个人正确运行.

有没有人想知道要尝试什么?

提前致谢!!!


编辑:

好吧,昨天是一个疲惫的一天,尝试各种方法来解决这个问题.这是我尝试过的问题以及问题的开始:

使用新程序

回到所有更新组件的旧版本,但仍然有同样的问题

使用旧程序

我决定回到绘图板并从旧版本的应用程序开始,逐步添加新功能.

  1. 使用旧组件重新编译旧版本 - 程序运行正常
  2. 更新到新的DevExpress组件 - 程序运行正常
  3. 更新到新的ESBPCS组件 - 程序运行正常
  4. 更新到新的DeepSoftware组件 - 程序运行正常

好的,现在我们知道我更新的组件集没有任何内容......

  1. 为2个图像列表中的每一个添加了1个图像 - 程序运行正常
  2. 添加了新的数据库表 - 程序运行正常
  3. 添加了打开和关闭新表的代码 - 程序运行正常
  4. 添加了新动作到动作列表,并为新动作添加了一个菜单项和工具栏按钮(动作此时不执行任何操作) - 程序运行正常
  5. 为应用程序添加了一个新的BLANK表单,并添加了代码以打开新表单 - BAM!

因此,只在应用程序中添加一个表单就是导致问题的原因!我删除了打开表单的所有代码,注释掉了uses子句并从项目源中删除了uses条目,一切都恢复正常了!

有人对此有任何想法吗?

谢谢!


编辑2:

对于@Warren P - 这是我的.DPR来源:

program Scheduler;

uses
  ExceptionLog,
  Forms,
  SchedulerMainUnit in 'SchedulerMainUnit.pas' {FrmMain},
  SchedulerDBInfoUnit in 'SchedulerDBInfoUnit.pas' {FrmDBInfo},
  SchedulerHistoryUnit in 'SchedulerHistoryUnit.pas' {FrmHistory},
  SchedulerOptionsUnit in 'SchedulerOptionsUnit.pas' {FrmOptions},
  SchedulerExtVersionUnit in 'SchedulerExtVersionUnit.pas' {FrmExtVersion},
  SchedulerSplashUnit in 'SchedulerSplashUnit.pas' …
Run Code Online (Sandbox Code Playgroud)

delphi performance

4
推荐指数
3
解决办法
5053
查看次数

标签 统计

delphi ×1

performance ×1