【发布时间】:2009-02-25 09:17:18
【问题描述】:
以下代码在任何时候都会抛出一个 EZDecompressionError 消息“无效的 ZStream 操作”
Reader.Free
被执行。谁能告诉我这段代码有什么问题?
Reader := nil;
Decompressor := nil;
InputFile := TFileStream (FileName, fmOpenRead);
try
Decompressor := TDecompressionStream.Create (InputFile);
Reader := TReader.Create (Decompressor, 1024);
SomeString := Reader.ReadString;
finally
Reader.Free
Decompressor.Free;
InputFile.Free;
end;
我测试了更改内存释放命令的顺序,但这似乎没有帮助。省略 Reader.Free 行当然会导致内存泄漏。
【问题讨论】:
标签: delphi memory-management file-io