-3

このコードは以下を使用します: TArchiveEntry ; それで、これがZlib Unit
からのものではないことは本当に疑いがありますか? Zlibユニットを宣言せずにTArchiveEntryを使用できるためです。

var AE : TArchiveEntry;

AE.EntryType := aeFile;
AE.FileNameLen := Length(sr.Name);
AE.FileLength := sr.Size;
OutStream.Write(AE, SizeOf(AE));
OutStream.Write(sr.Name[1], Length(sr.Name));
// Write the file itself
TmpStream := TFileStream.Create(ADir + sr.Name, fmOpenRead or fmShareDenyWrite);
OutStream.CopyFrom(TmpStream, TmpStream.Size);
TmpStream.Free;

これは間違いなくZlib Unit からのものです。

var compr : TZCompressionStream;

for i := 0 to zFiles.Count-1 do
begin
  compr := TZCompressionStream.Create(mStream, zcDefault);
  compr.CopyFrom(infile,c);
  compr.Free;
end;

なぜだろう、どんな違いがあるのだろうか?私はそれを把握することはできません、ほぼ同じパフォーマンスがあります。

4

2 に答える 2

1

この質問は次のようです。

シンボルがどの単位で定義されているかを確認するにはどうすればよいですか?

プロジェクトをコンパイルしたら、シンボルの上にカーソルを置くと、シンボルが定義されているユニットの名前を示すヒントが IDE に表示されます。

または、CTRL+クリック を使用して、エディターでシンボルを宣言するユニットを開きます。

于 2013-07-28T11:19:27.333 に答える