사용자 선택에 따라 특정 재배포 도구를 관리하기 위해 사용자 지정 페이지를 만들었습니다.Inno 설치 : ExtractTemporaryFile이 마법사 동결 발생
해당 도구는 사용자가 도구를 설치하거나 설치하지 않으려는 경우 해당 도구와 연결됩니다. 그런 다음 페이지를 방문하여 사용자에게 각 도구의 설치 진행 상황을 보여줍니다.
여기에있는 문제는 도구의 설정 중 첫 번째 ExtractTemporaryFile이 완료되고 진행률 페이지가 고정 된 것처럼 마지막 페이지를 보여주는 경우에만 진행률 페이지가 표시된다는 것입니다.
ExtractTemporaryFile이 발생하기 전에 진행률 페이지를 표시해야하는 유일한 방법은 설치 기능을 수행하기 전에 MsgBox를 넣는 것입니다. 그러나 ExtractTemporaryFile이 완료 될 때까지 심지어이 경우, ExtractTemporaryFile을 시작할 때, ProgressBar의 애니메이션 동결 ... 여기
이 일을 코드의 일부입니다procedure CurPageChanged(CurPageID: Integer);
begin
If CurPageID=PageInstallationPersonnalisee.ID then
begin
ProgressBarLabelPageInstPerso.Caption := 'Initialisation...';
if InstallTool1 = True then
begin
ProgressBarLabelPageInstPerso.Caption := 'Installing InstallTool1...';
F_InstallTool1();
end;
if InstallTool2 = True then
begin
ProgressBarLabelPageInstPerso.Caption := 'Installing InstallTool2...';
F_InstallTool2();
end;
if InstallTool3 = True then
begin
ProgressBarLabelPageInstPerso.Caption := 'Installing InstallTool3...';
F_InstallTool3();
end;
ProgressBarPageInstPerso.Style := npbstMarquee;
//ProgressBarPageInstPerso.Style := npbstNormal;
ProgressBarPageInstPerso.Position := 100;
CancelWithoutPrompt:=True;
WizardForm.Close;
end;
end;
주를이ExtractTemporaryFile()
은 각 F_InstallTooln()
함수에서 만들어집니다.
기타 도움이 될 수 설정 및 파일 섹션의 일부 : 첫째 ExtractTemporaryFile이 완료 될 때까지
다음[Setup]
SolidCompression=no
[Files]
;Temporary redists
Source: "{#MyRessourcesPath}InstallTool1_Setup.exe"; DestDir: "{tmp}"; Flags: deleteafterinstall noencryption dontcopy
Source: "{#MyRessourcesPath}InstallTool2_Setup.exe"; DestDir: "{tmp}"; Flags: deleteafterinstall noencryption dontcopy
Source: "{#MyRessourcesPath}InstallTool3_Setup.exe"; DestDir: "{tmp}"; Flags: deleteafterinstall noencryption dontcopy
, 페이지 PageInstallationPersonnalisee 내가 알고 있어요 ...
을 표시되지 않습니다 그 ExtractTemporaryFile설치 프로세스에 약간의 지연이 발생할 수 있지만 왜 마법사가 정지해야합니까?
제 질문은 : 내 시나리오에서 마법사를 강제로 새로 고쳐서 어떤 사람보다 먼저 나타낼 수있는 방법이 있습니까 ExtractTemporaryFile 절차가 시작 되었습니까?
임시 폴더에 압축 해제 된 파일에는 'nocompression' 플래그를 사용하는 것이 가장 좋습니다.'[Files]'절의 맨 처음에 그들을 두는 것이 좋습니다. 그것은 또한 파일의 크기에 따라 다릅니다. – RobeN
안녕하세요. 나는 압축 매개 변수를 추가하지 않았으며 파일은 이미 파일 섹션의 시작 부분에있었습니다. 그러나 ExtractTemporaryFile 절차가 완료 될 때까지 나는 여전히 얼어 붙습니다. – BenDev
파일의 크기는 얼마나됩니까? –