요약 : 내가 어떤 아카이브 스팬 열 JCL 압축 라이브러리를 얻을하는 데 문제가 있어요JEDI JCL 압축 라이브러리 늘 스팬 열려 아카이브 파일
. borlands 'windows.pas'에 정의 된대로 "(0000001) Incorrect Function"오류가 표시됩니다.
scenerios :
JCL을 예 압축을 사용하여 압축 단일 아카이브.
는 JCL 예와 7zip과 GUI를 모두 압축 해제 줄래.
는이 JCL 예 압축을 사용하여 압축 파일 7 위에 보관 스팬.
- 7zip GUI에만 압축을 풉니 다. JCL 예제를 사용하여 압축을 풀지 못했습니다.
7zip과 GUI를 사용하여 압축 된 하나의 아카이브.
는 JCL 예와 7zip과 GUI를 모두 압축 해제 줄래.
는 A는 7zip과 GUI를 사용하여 7 개 파일을 통해 압축 된 아카이브를 스팬.
- 7zip GUI에만 압축을 풉니 다. JCL
JCL을 압축 데모가 하나가 JCL 라이브러리에 포함되어
추가 정보를 사용하여 압축을 해제하지 못한다.
JCL : 2.2.1.3970
7zip과의 DLL : 스팬 아카이브 세트에서 9.20.0.0 및 9.65.0.0
예제 파일 이름 : "테스트 Archive.7z.002는"
가 된 .tar 및
다른 .7z 압축 모두 시도 파일 크기가 사용되었습니다. 2048 바이트 및 2048KB
델파이 2009.
이것은 사용하는 코드입니다. 그 JCL 압축 데모에서. 'TJclDecompressArchive (FArchive) .ListFiles'줄에 오류가 발생했습니다.
procedure TFormMain.ActionOpenROExecute(Sender: TObject);
var
ArchiveFileName, Password: string;
AFormat: TJclDecompressArchiveClass;
SplitArchive: Boolean;
begin
if OpenDialogArchiveRO.Execute then
begin
CloseArchive;
ArchiveFileName := OpenDialogArchiveRO.FileName;
SplitArchive := AnsiSameText(ExtractFileExt(ArchiveFileName), '.001');
if SplitArchive then
ArchiveFileName := ChangeFileExt(ArchiveFileName, '');
AFormat := GetArchiveFormats.FindDecompressFormat(ArchiveFileName);
if AFormat <> nil then
begin
if SplitArchive then
ArchiveFileName := ArchiveFileName + '.%.3d';
InputQuery('Archive password', 'Value', Password);
FArchive := AFormat.Create(ArchiveFileName, 0, SplitArchive);
FArchive.Password := Password;
FArchive.OnProgress := ArchiveProgress;
if FArchive is TJclDecompressArchive then
TJclDecompressArchive(FArchive).ListFiles
else
if FArchive is TJclUpdateArchive then
TJclUpdateArchive(FArchive).ListFiles;
ListView1.Items.BeginUpdate;
try
while ListView1.Items.Count < FArchive.ItemCount do
ListView1.Items.Add;
finally
ListView1.Items.EndUpdate;
end;
end
else
ShowMessage('not a supported format');
end;
end;
JCL 예제는 파일에 대해 알고 있고 열어 둡니다. (이미지에 사용 된 zip 형식의 동일한 문제).
Prehaps 누군가가 전에이 건너왔다?
누구든지 올바른 방향으로 나를 가리켜 주실 수 있습니까?.
감사합니다. 이슈 트래커 -
스콧 M.
압축 해제 코드를 게시하십시오. –
'FArchive'의 클래스 이름은 무엇입니까? 'TxxxDecompressArchive.ListFiles' 메소드가 예외를 발생시키는 곳은 어디입니까? –
@Lieven 예외는'SevenzipCheck()'호출시'procedure TJclSevenzipDecompressArchive.OpenArchive'에서 온 것입니다. – TridenT