Подтвердить что ты не робот

XE4: Как изменить исходную базу данных exe на платформе?

Мне просто нужны выходные исполняемые имена, такие как MyApp32.exe и MyApp64.exe после компиляции моего проекта в Delphi XE4.

Я нашел директиву на форуме, которая {$ LIBSUFFIX '32'}, но похоже, что это только для dll.

Любые предложения для исполняемых файлов?

Спасибо.

4b9b3361

Ответ 1

Окончательное имя исполняемого файла всегда совпадает с именем файла проекта. Поэтому либо создавайте отдельные проекты с общим исходным кодом, либо используйте событие Post-Build для вызова script, который копирует и переименовывает выходной файл в отдельное развертывание после того, как он был скомпилирован, например:

copy /B "$(OutputPath)" "C:\Deployment\$(OutputName)$(MySuffix)$(OutputExt)"

Где MySuffix определяется в параметрах проекта с другим значением для каждой платформы:

MySuffix=32

.

MySuffix=64

Используя отдельную папку, отладчик по-прежнему имеет доступ к исходному неиспользуемому исполняемому файлу для отладки и тестирования.

Ответ 2

Как я справляюсь с этим, у меня есть один проект с несколькими целями: 32/64 бит, debug/release и т.д. Каждая из этих целей выводится в отдельный каталог. Например, Win64\Release.

Когда я готовлю файлы, необходимые для развертывания и установки, я переименовываю исполняемые файлы в этот момент. И это переименование необходимо, потому что я развертываю 32 и 64-разрядные версии в один и тот же каталог. Естественно, это все автоматизировано.

Подход Remy к переименованию выходного файла в качестве действия post-build имеет недостаток, что отладчик не сможет найти исполняемый файл.

Философия заключается в том, чтобы вписаться в среду разработки при работе с файлами, которые будут использоваться средой IDE. Но тогда, когда дело доходит до развертывания, вы можете переименовывать файлы, повторно организовывать их в другую структуру папок и т.д., Что лучше соответствует вашим потребностям развертывания.

Ответ 3

Простой трюк позволяет:

Перейдите в Настройки проекта → Приложение и в поле "Расширения целевого файла" добавьте уникальный суффикс для каждой конфигурации.

e.g

Debug 32 bit: debug32.exe  
Debug 64 bit: debug64.exe  
Release 32 bit: 32.exe  
Release 64 bit: 64.exe 

Вывод для проекта с именем "ProjectName":

ProjectName.debug32.exe  
ProjectName.debug64.exe  
ProjectName.32.exe  
ProjectName.64.exe