|
25 / 14 / 1
Регистрация: 13.08.2010
Сообщений: 330
|
|
Какой процедурой возможно удалить комментарии из проекта Delphi?22.05.2012, 22:33. Показов 3234. Ответов 11
Метки нет (Все метки)
Я хотел бы перед окончательной компиляцией удалить все комментарии из проекта с целью уменьшения приложения и на всякий случай. Как это сделать быстро? Надо написать, приложение которое будет удалять во всем проекте все комменты. Скорее всего эта задача вставала перед большинством и посему прошу Вас выложить сие чудо-код сюда.
0
|
|
| 22.05.2012, 22:33 | |
|
Ответы с готовыми решениями:
11
Возможно ли удалить сразу все комментарии на движке ВП? Как при сборке проекта в -exe удалить все комментарии в коде Удалить из строки комментарии вида '/* ... */". Игнорировать вложенные комментарии. |
|
2184 / 1255 / 143
Регистрация: 28.04.2010
Сообщений: 4,592
|
|
| 22.05.2012, 22:52 | |
|
проходишь циклом по строкам, если первые 2 символа равны // то удаляешь строку.
Потом удаляй все что между { } или циклом, или используя pos() , posEx(), delete(). Циклом по такому принципу, проходишь посимвольно, если встретился символ { то переменную - флаг (boolean) ставишь true, если встретился } то флаг = false тут же в цикле, если флаг = true значит удаляем символы.
0
|
|
|
898 / 345 / 65
Регистрация: 11.02.2012
Сообщений: 1,502
|
|
| 22.05.2012, 22:56 | |
|
Руки - лучшая процедура.
0
|
|
|
25 / 14 / 1
Регистрация: 13.08.2010
Сообщений: 330
|
|
| 22.05.2012, 23:09 [ТС] | |
|
HanDi, Согласен, но руки - это долго.
anonimus, я не хотел заморачиваться на создание проги и хотел бы получить исходник готовый, если у кого есть он готовый, конечно.
0
|
|
|
12 / 12 / 0
Регистрация: 17.10.2009
Сообщений: 46
|
|
| 22.05.2012, 23:57 | |
|
а разве комментарии не игнорируются компилятором?
0
|
|
|
25 / 14 / 1
Регистрация: 13.08.2010
Сообщений: 330
|
|
| 23.05.2012, 00:08 [ТС] | |
|
Я попробовал создать пустой проект, просто форма, скомпилил его, получился exe с одним MD5, добавил коммент, опять скомпилил, получился другой MD5. Из этого Вывод: кампилятор внедряет коммент в бинарник, следовательно, наличие подробных описаний в комментариях будет существенно упрощать процесс обратного инженеринга, а этого упрощения следует избегать путем удаления комментов.
0
|
|
|
474 / 337 / 36
Регистрация: 31.05.2011
Сообщений: 1,164
|
|
| 23.05.2012, 00:15 | |
|
дата создания файла меняется в бинарнике
1
|
|
|
25 / 14 / 1
Регистрация: 13.08.2010
Сообщений: 330
|
|
| 23.05.2012, 01:12 [ТС] | |
|
Нет, это не так. Я попробовал несколько раз скомпилить в разное время пустую форму и хэш суммы были одинаковы, как только я вношу коммент, хэш меняется.
0
|
|
|
474 / 337 / 36
Регистрация: 31.05.2011
Сообщений: 1,164
|
|
| 23.05.2012, 01:36 | |
|
6c3bbfbc01def06dd20e94cb1f20fd6b *Project1.exe 01:31
72c4aa4d3804647e1474116027a3421a *Project1.exe 01:32 045e14d398fdc2eeea7bfa0caa030725 *Project1.exe 01:33
0
|
|
|
3944 / 1869 / 337
Регистрация: 16.03.2012
Сообщений: 3,880
|
|
| 23.05.2012, 02:23 | |
|
Ralik: Если ты использовал Compile Project, то Delphi не такая глупая - если ты ничего не менял - она ничего не делает. Используй Build Project. Тогда, по идее, она перекомпилирует в любом случае.
0
|
|
|
25 / 14 / 1
Регистрация: 13.08.2010
Сообщений: 330
|
|
| 23.05.2012, 02:51 [ТС] | |
|
Короче, может я чего не догоняю, я так и не понял в общем, нужно ли стирать комменты или они не попадают в бинарник?
0
|
|
|
3944 / 1869 / 337
Регистрация: 16.03.2012
Сообщений: 3,880
|
|
| 23.05.2012, 02:59 | |
|
Конечно - не попадают.
0
|
|
| 23.05.2012, 02:59 | |
|
Помогаю со студенческими работами здесь
12
Какой процедурой вернуть часы? Какой процедурой сохранить выборку из Dbf-файла Какой процедурой или функцией можно заменить знак * на + Чем файл проекта delphi с расширение dpr отличается от файла проекта dproj? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
|
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога
Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
|
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога
SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
|