为什么在 iOS 模拟器中使用 TZipFile 提取文件会引发访问冲突?

Why does extracting file a file using TZipFile in iOS Simulator raise access violation?

我正在使用 TZipFile 提取 zip 文件,它在 win32 中工作正常,但在 ios 模拟器中引发此异常。我不知道为什么,我已经检查了提取的位置是否正常,通过了打开的文件但是当提取它时它仍然引发该异常。目前我没有任何 ios 设备用于实际测试,但请在模拟器上提供帮助,我对此感到很沮丧。

ZipFile.Open(filePath, zmRead);//this line passed, 
ZipFile.Extract(0,dirPath );//raise EAccess exception in this line
ZipFile.Close;
//the filePath and the dirPath is the location of file and location i want to extract, it's all correct.

或使用

Zipfile.ExtractZipFile(filePath,dirPath) //still that exception

更新: 哦,我想我缺少有关我的项目的信息,我的工作是从服务器下载一个包含 .csv 文件的 zip 文件。我已经将它下载到 ios 模拟器中的 a 文件夹(在 运行 时间创建),我放入变量 dirPath = Tpath.GetHomePath() + SeparatorChar + 'csv' 和变量 'fileName' 的文件夹目录是dirPath' + name of file zip i downloaded。我正要把它解压到那个文件夹中。所以我使用 TZipFile 来提取它,它导致 ZipFile.Extract 行中的访问冲突错误。我将我的下载和提取部分代码放到一个新项目中,它运行得很好。我不知道为什么,但我的主要项目是一个包含许多功能的大型 prj,并且在我下载之前出现 section.Thanks

问题已解决,在我的 Download.pas 中是一个单独的 class,我在那里使用库 System.Zip,我使用另一个 class 来调用它。因此,当项目开始并解决问题时,我的工作是将 uses System.Zip 放在 Main form 中,这里没有逻辑,我认为这是来自 System.Zip 的错误。谢谢