#10Seattle #IOS9
#10Seattle #IOS9
I have a strange overflow under IOS with SEATTLE when I use libraries : Data.DbxSqlite and System.Zip I have an "acces violation at address 00000010".
If I remove Data.DbxSqlite unzip work well.
In my project when I switch the order between Data.DbxSqlite and System.Zip (zip first) my database connection die with the same acces violation.
Can you help me?
Note : the attached link is a sample project for unzip file. Uncomment Data.DbxSqlite to see an acces violation.
http://ftp.cdip.com/pub/EmbarcaderoIssues/TestFileZip.zip
I have a strange overflow under IOS with SEATTLE when I use libraries : Data.DbxSqlite and System.Zip I have an "acces violation at address 00000010".
If I remove Data.DbxSqlite unzip work well.
In my project when I switch the order between Data.DbxSqlite and System.Zip (zip first) my database connection die with the same acces violation.
Can you help me?
Note : the attached link is a sample project for unzip file. Uncomment Data.DbxSqlite to see an acces violation.
http://ftp.cdip.com/pub/EmbarcaderoIssues/TestFileZip.zip
Can you show the problematic code here, instead of us downloading a zip?
ReplyDeleteunit Unit4;
ReplyDeleteinterface
uses
FMX.Forms, FMX.StdCtrls, System.SysUtils, System.IOUtils,
FMX.Controls.Presentation, System.Classes, FMX.Types, FMX.Controls ;
type
TForm4 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
end;
var
Form4: TForm4;
implementation
{$R *.fmx}
uses
//Data.DbxSqlite, //enable this line will kill your project with IOS.
System.Zip;
procedure TForm4.Button1Click(Sender: TObject);
var
path : string;
pathTmp : string;
FileZip : TZipFile;
NbFile : Integer;
I : Integer;
begin
path := System.IOUtils.TPath.GetLibraryPath + PathDelim;
pathTmp := System.IOUtils.TPath.GetTempPath + PathDelim;
FileZip := TZipFile.Create;
FileZip.Open(path + 'fichXml.zip', zmReadWrite);
NbFile := FileZip.FileCount;
try
// FichZip.ExtractAll(pathTmp); //does not work too -> permission denied.
for I := 0 to NbFile-1 do
FileZip.Extract(FileZip.filename[i], PathTmp, false);
except
on E: Exception do
begin
//Showmessage(E.message);
end;
end;
FileZip.Close;
FileZip.free;
FileZip := nil;
end;
end.