【问题标题】:Error on IndexName of ClientDataSetClientDataSet 的 IndexName 错误
【发布时间】:2017-09-05 09:19:11
【问题描述】:

安装RAD Studio 10.2 Tokio后,而不是以前的版本,代码给我一个错误。

当我为 ClientDataSet 的属性 IndexName 分配一个有效的索引字符串时(不总是但经常,但我不明白为什么),代码给了我这个错误:异常消息:

Access violation at address 4DB0D009 in module 'midas.dll'. Read of address 00000000.

这些是错误之前的步骤:

4db0d009 +000 midas.dll
0079489a +062 ... Datasnap.DBClient TCustomClientDataSet.SwitchToIndex
00794a72 +07e ... Datasnap.DBClient TCustomClientDataSet.SetIndex
0079516e +002 ... Datasnap.DBClient TCustomClientDataSet.SetIndexName

可能是什么原因?

【问题讨论】:

  • 请参阅 DSintf.Pas 中的CheckDbClient 以查看 Delphi 应用程序使用的 Midas.Dll 实例在注册表中的注册位置。然后,尝试注册一个不同的版本,看看你是否仍然遇到同样的问题。
  • 感谢您的回复,但我尝试了同样的错误...

标签: delphi tclientdataset delphi-10.2-tokyo


【解决方案1】:

那些隐藏在臭名昭著的 midas.dll 中的原因,它充满了错误。恐怕你别无选择,只能尝试不同的 midas.dll 版本或修复它的错误

【讨论】:

    【解决方案2】:

    我认为问题出在 DataSnap.DBClient 的 SwitchToIndex 过程中;在行上:

    Status := FDSCursor.UseIndexOrder(MarshaledAString(MetaDataFromUnicode(IndexName)));
    

    【讨论】:

      猜你喜欢
      • 2015-03-20
      • 2016-04-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-10-13
      • 2012-06-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多