Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Аватара для El Sanchez

Ветеран


Contributor


Сообщения: 1274
Благодарности: 1030

Профиль | Отправить PM | Цитировать


Цитата Respin:
На кустомной кнопки отмены прописываю: FStream.Free; WizardForm.Close;
Если во всей установки: Confirm:= False; то всё просто замечательно! Но если: Confirm:= True; ругается на эту строчку: FStream.WriteBuffer(fBuf, lpdwNumberOfBytesRead); Возможно ли как-то откатить установку без ошибок, но с живым Confirm? »
Respin, имхо, форму не нужно закрывать. В процедуре DownloadFile находите строчки и дописываете (допустим, что кастомная кнопка это CancelButton):
Код: Выделить весь код
while (InternetQueryDataAvailable(hFile, lpdwNumberOfBytesAvailable, 0, 0) and (lpdwNumberOfBytesAvailable > 0)) do
begin
   if CancelButton.Cancel then Exit;
   SetArrayLength(lpBuffer, RoundDword(lpdwNumberOfBytesAvailable));

...

finally
   Timer.Enabled := False;
   FStream.Free;
   ProgressPage.Hide;
   CancelButton.Cancel := False;
end;
Обработчик OnClick кнопки:
Код: Выделить весь код
procedure CancelButtonOnClick(Sender: TObject);
begin
    TButton(Sender).Cancel := True;
end;
Цитата SatHan:
ответьте пожалуйста на вопрос. как мне сделать чтоб я на кнопочку нажал и ключ добавился? »
SatHan,
Код: Выделить весь код
procedure NewButton1Click(Sender: TObject);
begin
   RegWriteStringValue(HKLM, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Application_is1', 'QuietUninstallString', ExpandConstant('"{uninstallexe}" /SILENT'));
end;
Цитата AlexLAN:
Прошу людей с прямыми руками (не такими как у меня ) помочь довести до ума »
AlexLAN, функция должна возвращать результат, поэтому добавьте:
Код: Выделить весь код
function CutString(CutStr: String): String;
begin
  Delete(CutStr, 1, 2);
  Result := CutStr;
end;
Это сообщение посчитали полезным следующие участники:

Отправлено: 12:35, 23-09-2012 | #972