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

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

Пользователь


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

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


Цитата ksunechkin:
хех, только если там самому выбрать PF и подписать дальще название папки куда устанавливать - то оно разрешает установку))) »
Да, я это заметил и вроде пофиксил.
Вот пример

Код: Выделить весь код
[Setup]
AppName=My Program  
AppVerName=My Program
DefaultDirName={sd}\My Program
OutputDir=.
OutputBaseFilename=test

[code]
procedure MyFunction(Sender: TObject);
var
  S: String;
begin
  S := Copy(WizardForm.DirEdit.Text, 0, Length(WizardForm.DirEdit.Text)
                   - Length(ExtractFileName(WizardForm.DirEdit.Text)) - 1);

  if IsWin64 then
  begin
    if (S = ExpandConstant('{pf32}')) or (S = ExpandConstant('{pf64}')) then
    begin
      MsgBox('Программу нельзя устанавливать в' + #13#10 + S, mbInformation, MB_OK);
      WizardForm.DirEdit.Text := ExpandConstant('{sd}\My Program');
    end;
  end else
  if S = ExpandConstant('{pf}') then
  begin
    MsgBox('Программу нельзя устанавливать в' + #13#10 + S, mbInformation, MB_OK);
    WizardForm.DirEdit.Text := ExpandConstant('{sd}\My Program');
  end;
end;

procedure InitializeWizard();
begin
  WizardForm.DirEdit.OnChange := @MyFunction;
end;
Это сообщение посчитали полезным следующие участники:

Отправлено: 20:24, 23-12-2010 | #212