Z
zubr
Все таки красивее будет мой вариант:А ещё так:
Цитата
function NextButtonClick(CurPage: Integer): Boolean;
var
s:string;
begin
Result:=True;
If CurPage=6 then
begin
If FileSearch('my.dll', ExpandConstant('{app}'='' then
begin
s:='Выбрана неверная папка!';
MsgBox(s, mbCriticalError, mb_Ok);
Result := False
end
else
begin
If FileSearch('my.exe', ExpandConstant('{app}'=''
then
begin
s:='Выбрана неверная папка!';
MsgBox(s, mbCriticalError, mb_Ok);
Result:=False;
end;
end;
end;
end;
Это ж можно проверить абсолютно все файлы!
Код:
If (FileSearch('my.dll', ExpandConstant('{app}')='') or (FileSearch('my.exe', ExpandConstant('{app}')='') then
Ну здесь, во первых, надо добавитьПомогите, пожалуйста, логически завершить данную секцию кода. Здесь происходит проверка размера файла после нажатия кнопки "Установить", а также резервное копирование оригинального файла:
Цитата
procedure CurStepChanged(CurStep: TSetupStep);
var
s, s1, s2:string;
sz:Integer;
begin
If FileSize(ExpandConstant('{app}'+'\#1 DVD Ripper.exe', sz) then
begin
If sz<>921600 then
begin
s:='Несоответствие размера файла! Обновляемый файл изменён или имеет другую версию. Операция отменена!';
MsgBox(s, mbCriticalError, mb_Ok);
end
else
begin
s1:=ExpandConstant('{app}'+'\#1 DVD Ripper.exe';
s2:=ExpandConstant('{app}'+'\Backup';
If FileExists(s1) then
begin
CreateDir(s2);
FileCopy(s1, s2+'\#1 DVD Ripper.exe', True);
end;
end;
end;
end;
Код:
If CurPage=6 then
Чтобы дальше установка не продолжалась, если проверка не прошла делаете так:
Код:
If sz<>921600 then
begin
s:='Несоответствие размера файла! Обновляемый файл изменён или имеет другую версию. Операция отменена!';
MsgBox(s, mbCriticalError, mb_Ok);
Result:=False;
end