Показать сообщение отдельно
Старый 13.01.2005, 11:41   #4  
ta_and is offline
ta_and
Участник
 
226 / 122 (5) +++++
Регистрация: 26.02.2002
Адрес: СПб
Глобальная компиляция нужна не только для корректной подстановки измененных макросов.
Эта процедура нужна также для разрешения(нахождения соответствующих точек входа) всех внутренних и внешних ссылок и актуализация ссылок на адреса внутренних и внешних переменных. Особенно это важно для многоуровневого наследования в классах. Так как класс-потомок (уже ранее скомпилированный) может совсем ничего не знать о том, что произошли изменения в классе-предке. И этот класс потомок может обращаться по адресам в памяти класса-предка, которые уже совсем не для того используются... Из за этого могут просходить ошибки времени выполнения которые грохают ахарту. Поэтому, также делается второй проход при Глобальной компиляции, чтобы разрешить перекрестные ссылки между классам.

2 IlyaK
Жизнеспособная комбинация в ахарте только одна.
1клиент соответствует 1аппликайшну подключенному к 1базе.
все другие комбинации рано или поздно приведут к нестабильной работе и краху приложения или базы.
Говоря про одного клиента я имею в виду ОДНУ ВЕРСИЮ клиента, а не одну инсталляцию для конечного юзера.