Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.02.2011, 10:26   #1
ArtGrek
DelphiProger
Участник клуба
 
Аватар для ArtGrek
 
Регистрация: 14.11.2010
Сообщений: 1,023
По умолчанию RenameFile код ошибки 2

Код:
...
  Path := 'C:\Documents and Settings\ArtGrek\Мои документы\Projects Delphi7\ADShow 0.9.1'
...

procedure TForm1.Button1Click(Sender: TObject);
var
  SR: TSearchRec;
  ReN: integer;
  NewN: string;
begin
      ReN := 0;
      if FindFirst('Images\*.jpg', faAnyFile, SR) = 0 then
      begin
        repeat
          inc(ReN);
          NewN := Path + '\Images\' + IntToStr(ReN) + '1.jpg';
          if RenameFile(SR.Name, NewN) then ShowMessage('переименован')
            else ShowMessage('переименовка прошла с ошибкой : '+ IntToStr(GetLastError));
        until FindNext(SR) <> 0;
        FindClose(SR);
      end;
end;
в каталоге 5 фаилов и сообшение ShowMessage показывает 5 раз код ошибки 2
второи день мучаюсь, подскажите в чем дело?
переименовываю:
1.jpg -> 11.jpg
...
5jpg -> 51.jpg
VirusN13

Последний раз редактировалось ArtGrek; 03.02.2011 в 10:29.
ArtGrek вне форума Ответить с цитированием
Старый 03.02.2011, 10:32   #2
GunSmoker
Старожил
 
Регистрация: 13.08.2009
Сообщений: 2,581
По умолчанию

Код:
ShowMessage('переименовка прошла с ошибкой : '+ IntToStr(GetLastError));
заменить на

Код:
ShowMessage('переименовка прошла с ошибкой : '+ SysErrorMessage(GetLastError));
Тогда увидишь:

Код:
  { The system cannot find the file specified. }
  ERROR_FILE_NOT_FOUND = 2;
И подсказка: что у тебя лежит в SR.Name?
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
GunSmoker вне форума Ответить с цитированием
Старый 03.02.2011, 10:41   #3
ArtGrek
DelphiProger
Участник клуба
 
Аватар для ArtGrek
 
Регистрация: 14.11.2010
Сообщений: 1,023
По умолчанию

GunSmoker спасибо, помог увидить проблему
я думал SR.Name возвращает весь путь к фаилу
так работает
Код:
 if RenameFile(Path + '\Images\' + SR.Name, NewN) then ShowMessage('переименован')
VirusN13
ArtGrek вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не работает функция ReNameFile maloun Общие вопросы Delphi 2 10.01.2011 12:11
Код ошибки: 0x800703E7 misha_ch Операционные системы общие вопросы 2 17.09.2010 10:24
XP, Синий экран, код ошибки 0x000000BE Hant111 Windows 1 06.09.2010 20:43
Код ошибки: 0x800703E7 misha_ch Компьютерное железо 4 23.08.2010 17:15
C++. Есть код нужно исправить ошибки megavolt91 Общие вопросы C/C++ 6 06.06.2009 19:27