Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: 1 [2]  Все   Вниз
  Печать  
Автор Тема: BC6: Access violation. Link terminated.  (Прочитано 68187 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Prokl
Участник

ru
Offline Offline

« Ответ #30 : 20-03-2011 12:15 » 

Не знаю в чем глюк, но переустановил билдер и все пошло даже без патчей
Записан
RXL
Технический
Администратор

Offline Offline
Пол: Мужской

WWW
« Ответ #31 : 20-03-2011 13:05 » 

Патчи лучше наложить. Сперва апдейт - там апгрейдится не только интсрументарий, но стандартный набор VCL-библиотек. Потом патч.
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Prokl
Участник

ru
Offline Offline

« Ответ #32 : 20-03-2011 14:41 » 

Пропатчить не проблема, только получается, что Link terminated лечится только переустановкой
Записан
RXL
Технический
Администратор

Offline Offline
Пол: Мужской

WWW
« Ответ #33 : 20-03-2011 14:43 » 

Любой софт имеет глюки. А BCB6 - старый софт - он обязан иметь глюки Улыбаюсь
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Prokl
Участник

ru
Offline Offline

« Ответ #34 : 20-03-2011 14:58 » 

Когда же его обновят, что бы он не был старым
Записан
RXL
Технический
Администратор

Offline Offline
Пол: Мужской

WWW
« Ответ #35 : 20-03-2011 15:14 » 

Обновлять продукт 2002-го года нет смысла. Существуют более новые версии BCB. Я работаю со старым только потому, что проект очень старый и переносить под новую версию BCB будет проблематично.

Добавлено через 17 часов, 22 минуты и 3 секунды:
Я думаю, что переустанавливать BCB не было нужды. Я же писал, что можно удалить базу предкомпилированных заголовков (компилятор все равно ее заново создаст) - вероятнее всего они и мешали. Это файлы: $(BCB)\lib\vcl60.csm и $(BCB)\lib\vcl60.#*
« Последнее редактирование: 21-03-2011 08:36 от RXL » Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Prokl
Участник

ru
Offline Offline

« Ответ #36 : 21-03-2011 11:24 » 

Я начал изучать ВСВ не очень давно, может мне стоит перейти на более новую версию?
Записан
RXL
Технический
Администратор

Offline Offline
Пол: Мужской

WWW
« Ответ #37 : 21-03-2011 11:59 » 

Думаю, стоит.
Список релизов BCB.
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
sss
Специалист

ru
Offline Offline

« Ответ #38 : 27-11-2013 15:38 » 

Блин со мной приключилась эта фигня в BDS 2006... В общем начал копаться. И вот чё накопал..

У меня есть структура, окруженная смотри на прагмы.
Код:

#pragma pack (push)
#pragma pack (1)
...
struct PDU_SMS_DELIVER
{
  PPDU_SMS_DELIVER            next;      //организация списка

  PDU_SC_ADDRESS_FIELDS       sc;        //sms center
  PDU_SMS_FLAGS               flags;
  PDU_OA_ADDRESS_FIELDS       oa;        //Originating address
  PDU_PROTOCOL_TYPE           proto;
  PDU_DCS_TYPE                dcs;
  PDU_TIMESTAMP               sc_stamp;   //Время когда центр принял sms
  PDU_USER_DATA               ud;         //User data
};
#pragma pack (pop)


Ну и все работало, пока я не добавил это..
Код:
#pragma pack (push)
#pragma pack (1)

struct PDU_SMS_DELIVER
{
  PPDU_SMS_DELIVER            next;      //организация списка

  PDU_SC_ADDRESS_FIELDS       sc;        //sms center
  PDU_SMS_FLAGS               flags;
  PDU_OA_ADDRESS_FIELDS       oa;        //Originating address
  PDU_PROTOCOL_TYPE           proto;
  PDU_DCS_TYPE                dcs;
  PDU_TIMESTAMP               sc_stamp;   //Время когда центр принял sms
  PDU_USER_DATA               ud;         //User data
  CStrList                    at_fields; //Поля AT запроса
};
#pragma pack (pop)


CStrList   - сложный класс. До его добавления структура реально имела простые структ мемберы
Исправив на вот  это

Код:
#pragma pack (push)
#pragma pack (1)

...

#pragma pack (pop)
struct PDU_SMS_DELIVER
{
  PPDU_SMS_DELIVER            next;      //организация списка

  PDU_SC_ADDRESS_FIELDS       sc;        //sms center
  PDU_SMS_FLAGS               flags;
  PDU_OA_ADDRESS_FIELDS       oa;        //Originating address
  PDU_PROTOCOL_TYPE           proto;
  PDU_DCS_TYPE                dcs;
  PDU_TIMESTAMP               sc_stamp;   //Время когда центр принял sms
  PDU_USER_DATA               ud;         //User data
  CStrList                    at_fields; //Поля AT запроса
};

Линкер перестал вылетать.. Там где 3 точки - определения с структур мемберов этой..
К тому моменту, как я начал билдить проект и получил этот баг, я изменил очень много
чего.. Поэтому начитался про него по самое не хочу.

« Последнее редактирование: 27-11-2013 15:44 от sss » Записан

while (8==8)
RXL
Технический
Администратор

Offline Offline
Пол: Мужской

WWW
« Ответ #39 : 27-11-2013 18:49 » 

Я точно не управлял pack. Если только где-то в заголовках VCL...
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
sss
Специалист

ru
Offline Offline

« Ответ #40 : 28-11-2013 02:28 » 

Ну я просто для информации. Кстати - так же жуткие глюки с обработкой исключений при таком выравнивании... При генерации исключений билдер просто отстыковывается от отлаживаемого приложения.
Записан

while (8==8)
darkelf
Молодой специалист

ua
Offline Offline

« Ответ #41 : 28-11-2013 06:19 » 

Ну я просто для информации. Кстати - так же жуткие глюки с обработкой исключений при таком выравнивании... При генерации исключений билдер просто отстыковывается от отлаживаемого приложения.
Имхо, упаковку имеет смысл делать только тогда, когда структуры необходимо сериализировать для записи на диск/чтения с диска/передачи по сети. С упаковкой работа со структурами в программе может быть медленней.
Записан
sss
Специалист

ru
Offline Offline

« Ответ #42 : 28-11-2013 10:04 » new

Согласен
Записан

while (8==8)
Страниц: 1 [2]  Все   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines