Вниз
Скачать: CL | DM;

Изменение константы в прилложении без перекомпиляции???   Найти похожие ветки 

← →
Sour ©   (2003-07-10 10:45) [0]

В одном модуле приложения объявлена константа SC_NAME = "Name1".
Требуется изменять эту константу не перекомпилирую проект, т.е. допустим необходимо два приложения,
в 1-ом SC_NAME должна быть "Name1", а во 2-ом - "Name2".
Это можно сделать 2 раза скомпилировав проект с разными значениями константы, но это приходится делать
часто, нельзя ли как-нибудь менять константу не компилирую каждый раз проект.


← →
Palladin ©   (2003-07-10 10:50) [1]

тебе не кажется что схему работы поменять надо? без использования констант...


← →
Юрий Федоров ©   (2003-07-10 10:56) [2]

Схему поменять надо - это точно. А если так, то :
Заведи два значения константы с помощью {$IFDEF}.
Напиши 2 бат-файла с запуском пакетного компилятора, и компилируй финальную версию с коммандной строки


← →
Skier ©   (2003-07-10 10:57) [3]

А эта...прямо в Exe-нике измени, вот счастья-то будет !


← →
ЮЮ ©   (2003-07-10 11:06) [4]

Заменить на переменную и установить её значение при запуске программы, взяв из INI, реестра, пользователького диалога или параметра запуска


← →
Digitman ©   (2003-07-10 11:30) [5]


> Sour


вариантов минимум 2:

1. Меняй схему декларации (и, соответствено, использования) константы на

resourcestring
SC_NAME = "Name1";

Любым редактором ресурсов за 3 сек. правишь Name1 на Name2 - и всех делов.

2. Не меняй схему. Константа размещается линкером в секции инициализированных данных, поэтому в данном случае правку можно без проблем выполнить любым файловым HEX-редактором, задав соотв.модель поиска.


← →
Digitman ©   (2003-07-10 11:32) [6]

вариант 3 : выноси константу в ресурсную DLL.
Правка ресурса - программная, в ран-тайм, с использованием [Begin|End]UpdateResource()


← →
Карелин Артем ©   (2003-07-10 11:40) [7]

Берешь обычный hex-редактор и меняешь...



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.013 c
1-77910
Khloo
2003-07-10 12:19
2003.07.24
Как создать отчёт из таблицы для печати...


14-78135
Tornado
2003-07-09 10:23
2003.07.24
DELPHI 7


1-77980
Виталик
2003-07-10 20:26
2003.07.24
Перемещение формы с BorderStyle=bsNone


6-78031
Chris
2003-05-16 20:02
2003.07.24
Как узнать маршрут между хостами в локальной сети?


3-77732
dimonka
2003-06-30 22:55
2003.07.24
Fast Report




   Наверх