如何跟踪“ 特殊情况:错误的更新顺序!”错误的位置?
此错误消息在Datasnap.DSIntf
中定义为
const
...
ERRCODE_FLYAWAY_WRONGORDER = 13; { Special case: wrong order of updates for fly-away }
...
DBERR_FLYAWAY_WRONGORDER = ERRBASE_ALC + ERRCODE_FLYAWAY_WRONGORDER;
但是在Delphi源代码中没有其他地方可以找到对子字符串FLYAWAY_WRONGORDER的引用。 *
我的意图是使用调试dcu进行编译,然后在引发异常的行上放置一个断点,并向上检查调用堆栈以找到原因。
我目前正在逐步进入代码中,直到出现错误为止,但这效率较低(复杂的应用程序)。
在TApplicationEvents
的OnException处理程序中放置断点不会给我可用的调用堆栈信息:
那么,我如何(有效地)跟踪产生此错误的地方?
正在发生的事情的背景:
TcxScheduler
连接到数据模块中的TcxSchedulerStorage
组件,并连接到嵌套的TClientDataSet
s 我实际上是通过在几个地方为主数据集调用ApplyUpdates来“修复”该错误的,但是由于我不太确定原因,因此我想对此进行进一步调查。所以我的问题不是我如何解决代码中的错误,而是我如何 查找 我的代码中的错误?
* TCustomADODataSet.InternalPost
的{{1}}中有一个CheckForFlyAway例程,但是我们不使用ADO,我无法在这些例程中设置断点。
>