OS X上的FireDAC SQLite加密

OS X上的FireDAC SQLite加密,sqlite,delphi,encryption,c++builder,Sqlite,Delphi,Encryption,C++builder,尝试将一个工作的Win32项目(包括SQLite数据加密)移植到OS X时,我发现了一个问题 该项目是用RAD Studio柏林10.1和C++ Builder个性开发的。它包括组件FDSQLiteSecurity。使用Delphi个性也会出现问题 该单位包括: TDFConnection *FDConnection1; TFDPhysSQLiteDriverLink *FDPhysSQLiteDriverLink1; TFDSQLiteSecurity *FDSQLiteSecurity1;

尝试将一个工作的Win32项目(包括SQLite数据加密)移植到OS X时,我发现了一个问题

该项目是用RAD Studio柏林10.1和C++ Builder个性开发的。它包括组件FDSQLiteSecurity。使用Delphi个性也会出现问题

该单位包括:

TDFConnection *FDConnection1;
TFDPhysSQLiteDriverLink *FDPhysSQLiteDriverLink1;
TFDSQLiteSecurity *FDSQLiteSecurity1;
以下是我的代码:

String DatabaseName, Password;
...
#ifdef WIN32
  DatabaseName = "C:\\...\\MyDB.db";
#endif
#ifdef MACOS
  DatabaseName = "/.../MyDB.db";
#endif
Password = "mypassword";
...
FDConnection1->Params->Values["Database"] = DatabaseName;
FDSQLiteSecurity1->Database = DatabaseName;
FDSQLiteSecurity1->Password = Password;
FDConnection1->Params->Values["Password"] = Password;    
FDConnection1->Connected = true;
...
在OS X上,该连接引发EAccessViolation

该程序通过使用非加密文件删除安全管理行来正常工作


提前感谢您的建议

您使用的typename似乎有输入错误:
TDFConnection*FDConnection1必须是TFDConnection*FDConnection1

您使用的typename似乎有输入错误:
TDFConnection*FDConnection1必须是TFDConnection*FDConnection1

除了每个访问冲突之外,没有其他可用信息?没有错误消息,没有堆栈跟踪,什么都没有?如果在
FDConnection1->Params Values[“Database”]=DatabaseName处设置断点,调试器会告诉您什么
然后评估
FDSQLLiteSecurity
(看起来应该是
FDSQLLiteSecurity1
)@Ken,谢谢你的回答。以下是详细信息:“项目测试引发了异常类EAccessViolation,其”访问冲突位于地址00132AAA,访问地址00132AAA“。不再报告调试错误消息。该程序工作到“FDConnection1->Connected=true;”。然后发生异常。此时,堆栈报告“进程不可访问”。在引发异常之前评估FDSQLLiteSecurity1,将正确设置其属性。组件的名称是FDSQLLiteSecurity1,它只是一个输入拒绝(已更正)。您可以发布您的帖子,并将该信息放在问题本身中,而不是隐藏在注释中吗?除了eaccess违规之外,没有其他可用信息?没有错误消息,没有堆栈跟踪,什么都没有?如果在
FDConnection1->Params Values[“Database”]=DatabaseName处设置断点,调试器会告诉您什么
然后评估
FDSQLLiteSecurity
(看起来应该是
FDSQLLiteSecurity1
)@Ken,谢谢你的回答。以下是详细信息:“项目测试引发了异常类EAccessViolation,其”访问冲突位于地址00132AAA,访问地址00132AAA“。不再报告调试错误消息。该程序工作到“FDConnection1->Connected=true;”。然后发生异常。此时,堆栈报告“进程不可访问”。在引发异常之前评估FDSQLLiteSecurity1,将正确设置其属性。组件的名称是FDSQLLiteSecurity1,它只是一个输入拒绝(已更正)。您能将您的帖子和信息放入问题本身,而不是隐藏在注释中吗?