| 
| 
 | Вопрос # 1 825/ вопрос открыт / | 
 |  Здравствуйте, уважаемые эксперты!У меня такой вопрос как правильно переименовать юнит в уже написанном многомодульном приложении. 
|  |   Вопрос задал: GAZ (статус: Посетитель)Вопрос отправлен: 19 августа 2008, 07:18
 Состояние вопроса: открыт, ответов: 2.
 |  Ответ #1. Отвечает эксперт: Шичко Игорь Здравствуйте, GAZ!Если делать это вручную, то операция занимает несколько шагов.
 Для примера: переименовать unit1 в unit15
 1. Открыть проект, в нем модуль unit1. Первую строку
 unit Unit1;
 поменять на
 unit Unit15;
 2. Переименовать файлы unit1.pas, unit1.dfm, Unit1.ddp, Unit1.dcu, Unit1.~pas, Unit1.~dfm, Unit1.~ddp в соответственно unit15.pas, unit15.dfm, Unit15.ddp, Unit15.dcu, Unit15.~pas, Unit15.~dfm, Unit15.~ddp
 3.  Открыть модуль проекта, и строку
 Unit1 in 'Unit1.pas' {Project1},
 поменять на
 Unit15 in 'Unit15.pas' {Form1},
 4. Открыть по очереди все остальные модули и если где то используется Unit1 (т.е. присутствует строка Uses unit1;) поменять эту строку на Uses unit15;
 Откомпилировать.
 Если выскакивает ошибка File not found unit1.dcu значит в каком-то модуле ещё присутствует ссылка на использование Unit1 (uses unit1).
 P.S. Рекомендация. перед проведением эксперимента сохранить все файлы проекта в отдельном каталоге (сделать копию каталога программы).
 
|  | Ответ отправил: Шичко Игорь (статус: 9-ый класс)Время отправки: 19 августа 2008, 07:55
 Оценка за ответ: 4
 |  Ответ #2. Отвечает эксперт: Feniks Здравствуйте, GAZ!В дополнении...
 Сам модуль, который необходимо переименовать, лучше переименовывать средставми Делфи. Для этого используйте "Сохранить как..." или откройте окно Менеджера Проекта и там это сделайте. Тем более, если у вас не просто сам юнит, а еще и форма к нему. И лучше удалять старые .dcu файлы. Потом ручками Поиском и Заменой пройтись по всем модулям проекта и заменить старое название на новое.
 Я когда-то в Д5 наступал на такие грабли.
 
 P.S. Желаю удачи. Если помог, жмите +1 в репутацию. ;-)
 
|  | Ответ отправил: Feniks (статус: Бакалавр)Время отправки: 19 августа 2008, 10:22
 
 |  
 Мини-форум вопросаВсего сообщений: 5; последнее сообщение — 20 августа 2008, 18:11; участников в обсуждении: 2. 
|   | Dron (статус: Студент), 19 августа 2008, 10:34 [#1]: Цитата: Переименовать файлы unit1.pas, unit1.dfm, Unit1.ddp, Unit1.dcu, Unit1.~pas, Unit1.~dfm, Unit1.~ddp в соответственно unit15.pas, unit15.dfm, Unit15.ddp, Unit15.dcu, Unit15.~pas, Unit15.~dfm, Unit15.~ddp Ну с этим Игорь, конечно, переборщил. Кроме *.pas, *.dfm больше вообще ничего хранить не нужно - это всё временные файлы. *.dcu можно оставить, конечно, но если его нет - не беда, перекомпилируется заново.
 
 А вообще, вот то, чем я пользуюсь:
 
 del /S *.~*
del /S *.dsk
del /S *.obj
del /S *.hpp
del /S *.ddp
del /S *.mps
del /S *.mpt
del /S *.bakСоздайте bat-файл с таким содержанием и назовите его, к примеру, clean.bat. Это быстрый способ удалить кучу ненужных файлов. В каталоге проекта станет заметно чище   С уважением. |  
|   | GAZ (статус: Посетитель), 19 августа 2008, 17:57 [#2]:Dron del /S *.~*
 del /S *.dsk
 del /S *.obj
 del /S *.hpp
 del /S *.ddp
 del /S *.mps
 del /S *.mpt
 del /S *.bak
 Не могли бы вы пояснить более понятным языком
 |  
|   | Dron (статус: Студент), 20 августа 2008, 08:33 [#3]:Что именно пояснить? Вам интересно, как это работает? Команда del удаляет файлы, параметр /S указывает на то, что сделать это нужно тихо, не выводя никаких сообщений или окон запроса. Ну а дальше просто перечислены маски тех файлов, которые не нужны.
 С уважением. |  
|   | GAZ (статус: Посетитель), 20 августа 2008, 18:07 [#4]:Dron Простите за дилетанство,просто никогда не имел дело с bat-файл,как его создавать из проекта или...?Как подключать,если нет? Что значит я пользуюсь,только когда надо переименовать или...?
 |  Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте. |