access violation in sdac
Posted: Fri 28 Feb 2014 09:22
hi,
after upgrade from sdac 5.0.0.5 to 6.9.17 (and from delphi xe to delphi xe5) i'm getting such access violation deep in the sdac code:
i can just say, there are some nested onchange event handlers, and i'm using this special setting:
DataTypeMap.AddDBTypeRule(msReal, ftFloat);
do you have an idea? with old sdac, everything works fine.
after upgrade from sdac 5.0.0.5 to 6.9.17 (and from delphi xe to delphi xe5) i'm getting such access violation deep in the sdac code:
Code: Select all
(00015B0C) [08176B0C] MemUtils.CopyBuffer (Line 522, "MemUtils.pas" + 0)
(00020C93) [08181C93] MemData.TData.GetFieldData (Line 2866, "memdata.pas" + 62)
(0022779B) [0838879B] CRAccess.TCRRecordSet.GetFieldData (Line 2917, "CRAccess.pas" + 45)
(00068649) [06FA9649] System.Variants.@VarClr
(002277BD) [083887BD] CRAccess.TCRRecordSet.GetFieldData (Line 2918, "CRAccess.pas" + 46)
(0024B44A) [083AC44A] OLEDBAccess.TOLEDBRecordSet.GetFieldData (Line 7684, "OLEDBAccess.pas" + 11)
(00020E08) [08181E08] MemData.TData.GetField (Line 2898, "memdata.pas" + 21)
(0024B482) [083AC482] OLEDBAccess.TOLEDBRecordSet.GetField (Line 7692, "OLEDBAccess.pas" + 3)
(0018C482) [082ED482] MemDS.TMemDataSet.GetFieldData (Line 1928, "MemDS.pas" + 8)
(0018C27F) [082ED27F] MemDS.TMemDataSet.GetFieldData (Line 1869, "MemDS.pas" + 1)
(000215A9) [081825A9] MemData.TData.GetNullByBlob (Line 3178, "memdata.pas" + 11)
(000215E4) [081825E4] MemData.TData.GetNullByBlob (Line 3184, "memdata.pas" + 17)
(0024B3B4) [083AC3B4] OLEDBAccess.TOLEDBRecordSet.GetNull (Line 7661, "OLEDBAccess.pas" + 3)
(00020D5E) [08181D5E] MemData.TData.GetField (Line 2878, "memdata.pas" + 1)
(0024FCA4) [083B0CA4] OLEDBAccess.TOLEDBRecordSet.CheckBCDOverflow (Line 9302, "OLEDBAccess.pas" + 4)
(0024B482) [083AC482] OLEDBAccess.TOLEDBRecordSet.GetField (Line 7692, "OLEDBAccess.pas" + 3)
(0002723D) [0818823D] MemData.TData.InternalGetObject (Line 5627, "memdata.pas" + 3)
(000272C0) [081882C0] MemData.TData.GetObject (Line 5639, "memdata.pas" + 4)
(0018E8D0) [082EF8D0] MemDS.TMemDataSet.InternalPost (Line 2998, "MemDS.pas" + 14)
(001F9F6D) [0835AF6D] DBAccess.TCustomDADataSet.InternalPost (Line 7979, "DBAccess.pas" + 6)
(00407309) [07348309] Data.DB.TDataSet.CheckOperation
(00406E28) [07347E28] Data.DB.TDataSet.Post
(0018EA32) [082EFA32] MemDS.TMemDataSet.Post (Line 3021, "MemDS.pas" + 1)
(0028B9E5) [083EC9E5] MSAccess.TCustomMSDataSet.Post (Line 4192, "msaccess.pas" + 1)
....
DataTypeMap.AddDBTypeRule(msReal, ftFloat);
do you have an idea? with old sdac, everything works fine.