Encrytion causes access violation
Posted: Tue 23 Jul 2019 12:33
Hi,
I'm using Encryption with SDAC.
When updating, i'm using this statement:
(Encriptor end encryption password is set earlier)
The tables fields are varbinary fields.
On some tables i get an acess violation in TData.InternalCompareFieldValue. Since i have no source code i can't debug the cause. Maby somebody has an idea?
Here is the full call stack:
I'm using Encryption with SDAC.
When updating, i'm using this statement:
Code: Select all
qry.SQL.Text := 'select FIELD1, FIELD2 from dbo.MyTable;
qry.Encryption.Fields := 'FIELD1, FIELD2;
qry.DataTypeMap.AddFieldNameRule ('FIELD1', ftString);
qry.DataTypeMap.AddFieldNameRule ('FIELD2', ftString);
qry.Open;
qry.Edit;
qry.FieldByName('FIELD1').AsString := myString1;
qry.FieldByName('FIELD2').AsString := myString2;
qry.Post;
The tables fields are varbinary fields.
On some tables i get an acess violation in TData.InternalCompareFieldValue. Since i have no source code i can't debug the cause. Maby somebody has an idea?
Here is the full call stack:
Code: Select all
00961b13 +0ca3 MyApp.exe MemData TData.InternalCompareFieldValue
00962126 +0206 MyApp.exe MemData TData.CompareFieldValue
00a46c27 +0297 MyApp.exe DASQLGenerator TDASQLGenerator.FieldModified
00a46d95 +0035 MyApp.exe DASQLGenerator TDASQLGenerator.FieldModified
00a480de +006e MyApp.exe DASQLGenerator TDASQLGenerator.GenerateUpdateSQL
01494d5f +008f MyApp.exe MSSQLGenerator TCustomMSSQLGenerator.GenerateUpdateSQL
00a494c4 +0154 MyApp.exe DASQLGenerator TDASQLGenerator.GenerateSQLforUpdTable
00a49725 +0115 MyApp.exe DASQLGenerator TDASQLGenerator.GenerateSQL
00a82412 +0562 MyApp.exe DBAccess TDADataSetUpdater.CheckUpdateSQL
00a85d9f +008f MyApp.exe DBAccess TDADataSetUpdater.PerformSQL
00a8736d +011d MyApp.exe DBAccess TDADataSetUpdater.PerformUpdateDelete
00a87550 +0010 MyApp.exe DBAccess TDADataSetUpdater.PerformUpdate
0098afa0 +0040 MyApp.exe MemDS TDataSetUpdater.DoPerformUpdate
00983b3b +001b MyApp.exe MemDS TMemDataSet.DoPerformUpdate
0095e3b4 +0014 MyApp.exe MemData TData.InternalUpdate
01479dec +001c MyApp.exe OLEDBAccess TOLEDBRecordSet.InternalUpdate
00967f97 +0057 MyApp.exe MemData TMemData.UpdateRecord
01340d34 +0004 MyApp.exe SqlClasses TSqlRecordSet.UpdateRecord
0095e1ae +006e MyApp.exe MemData TData.PostRecord
00967c7c +004c MyApp.exe MemData TMemData.PostRecord
00982e59 +0169 MyApp.exe MemDS TMemDataSet.InternalPost
00a75993 +0123 MyApp.exe DBAccess TCustomDADataSet.InternalPost
0091a310 +0040 MyApp.exe Data.DB TDataSet.CheckOperation
00919bb2 +0062 MyApp.exe Data.DB TDataSet.Post
00982f4c +000c MyApp.exe MemDS TMemDataSet.Post
014be8fb +000b MyApp.exe MSAccess TCustomMSDataSet.Post
0529205e +2bbe MyApp.exe Objects 1116 +558 TMyObject.prcSave