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

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

Ветеран


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

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


Цитата MrLOLs:
Вот конечный вариант »
Для чего вы используете Function cm(Message: String): String;, на мой взгляд бесполезная функция. Так же в цикле for...to...do не хватает Break;, т.е. для чего перебирать дальше, если мы уже нашли...
Как говорят, оптимизации кода нет предела, но всё же я бы записал так:
Пример

Код: Выделить весь код
function NextButtonClick(CurPageID: Integer): Boolean;
var
  i: Integer;
  path: string;
begin
  if CurPageID = wpSelectDir then
    begin
      path := Uppercase(WizardForm.DirEdit.Text);
      if (Pos(Uppercase(ExpandConstant('{pf}')), path) > 0)
        or (Pos(Uppercase(ExpandConstant('{win}')), path) > 0) then
        begin
           MsgBox(ExpandConstant('{cm:SysDirSelect}'), mbError, MB_OK);
           Exit;
        end;
      for i := 1 to Length(path) do
        if path[i] > #122 then
          begin
            MsgBox(ExpandConstant('{cm:Cyrillic}'), mbError, MB_OK);
            Exit;
          end;
    end;
  Result := True;
end;

-------
Книги нужны, чтобы напоминать человеку, что его оригинальные мысли не так уж новы... Авраам Линкольн.

Это сообщение посчитали полезным следующие участники:

Отправлено: 22:40, 13-07-2011 | #2343