经多次测试,可以采信下列项目启动时间记录:
BeforeOpenProject 开始 2016-11-17 09:11:23 '在注册表中修改本机的系统日期和时间格式
BeforeOpenProject 结束 2016-11-17 09:11:23 '检查项目文件是否在固定的文件夹中
BeforeConnectOuterDataSource 开始 2016-11-17 09:11:23 '外网
BeforeConnectOuterDataSource 结束 2016-11-17 09:11:24 '用1秒钟ping内网的IP地址,确定选择内网还是外网的IP地址
BeforeLoadInnerTable 开始 2016-11-17 09:11:25 '4张内部表,不加载任何数据
BeforeLoadInnerTable 结束 2016-11-17 09:11:25 'e.Filter = "[_Identify] Is Null"
BeforeLoadOuterTable 开始 2016-11-17 09:11:25 '30张外部表,不加载任何数据,在“设置外部表”中设置过滤条件
BeforeLoadOuterTable 结束 2016-11-17 09:11:41 '竟然用了16秒
Initialize 开始 2016-11-17 09:11:43
Initialize 结束 2016-11-17 09:11:43
AfterOpenProject开始 2016-11-17 09:11:46
……
项目发布后,用户运行项目时的更新用时:
AfterOpenProject 检查更新开始 2016-11-17 09:47:39 '检查更新 If Syscmd.Project.Update(False,False) = False Then
AfterOpenProject 检查更新结束 2016-11-17 09:48:02 '竟然用了22秒
启动OpenQQ用时:
AfterOpenProject 启动OpenQQ开始 2016-11-17 09:48:05 'OpenQQ启动
AfterOpenProject 启动openQQ结束 2016-11-17 09:48:11 '在无法连接时用了6秒
由此可见,启动的主要时间浪费在BeforeLoadOuterTable事件(16秒)和检查更新(22秒)中。
如果不考虑检查更新所需时间,则BeforeLoadOuterTable事件用时太可怕了。
声明:已经清除了“检查发行商的证书是否吊销”的勾选状态。
[此贴子已经被作者于2016/11/17 12:06:57编辑过]