Перейти к содержанию
    

Надо сделать переносимый exe файл,

убираем рантайм пакеты

убираем использовать динамические rtl

делаем релиз

компилируем, запускаем - вылетает ошибка см рис

Если динамические rtl оставить и скопировать все нужные dll то работает там где билдер не стоит.

Как это победить ?

err1.jpg

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

32 minutes ago, Xenia said:

У меня оно вот так, но всё переносимо:

К сожалению у меня все тоже.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Это явно что то с программой а не с билдером, тк другие проги нормально компилируются и запускаются.

Куда копать бы понять.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Запускайте под отладчиком типа https://x64dbg.com/ и смотрите бектрейс, как оно падало. Тогда уже будем думать, как, из-за чего и что с этим делать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

20 minutes ago, makc said:

Тогда уже будем думать, как, из-за чего и что с этим делать

Еще бы понять что это значит...

err2.jpg

err3.jpg

Наверно актуальнее это

err4.jpg

err5.jpg

Что то с памятью

err6.jpg

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

7 часов назад, whale сказал:

Наверно актуальнее это

Нет, актуальнее посмотреть на стек (последовательность) вызовов через окно Call Stack https://help.x64dbg.com/en/latest/gui/views/CallStack.html

Основная идея в том, чтобы по последовательности вызовов (именам функции) понять, что за ветка в программе могла дать такой эффект падения.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

3 hours ago, makc said:

актуальнее посмотреть на стек

Стек вот такой, как тут понять в каком месте прога споткнулась для меня загадка....

err7.jpg

Изменено пользователем whale

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

7 минут назад, whale сказал:

Стек вот такой

Я не специалист по билдеру, но всё выглядит как проблема в деструкторе Unit10 или где-то около него.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

16 minutes ago, makc said:

деструкторе Unit10

Удалил форму 10 не помогло, видно что то что идет после инициализации форм тормозит

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Только что, whale сказал:

Удалил форму 10 не помогло, видно что то что идет после инициализации форм тормозит

Перед падением (и после) судя по всему есть обращения к форме 3, может быть с ней что-то не так?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Just now, makc said:

форме 3

Форма 3 главная, в ней вся обработка и функции )

Я так понимаю что то переходит по адресу 0 , попробую все позабанить хотя уже пробовал.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Только что, whale сказал:

Форма 3 главная, в ней вся обработка и функции )

Я так понимаю что то переходит по адресу 0 , попробую все позабанить хотя уже пробовал.

По виду там есть попытка вызова какого-то обработчика, чей указатель живёт в контексте формы. Но нет проверки, что этот обработчик был зарегистрирован и поэтому вызов идёт по нулевому адресу.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

12 minutes ago, makc said:

вызов идёт по нулевому адресу.

Непонятно почему с динамическим подключением dll все работает, я все надеюсь может что то в компиляторе билдера подправить . 

Или компилятор криво становить какую нить библиотеку.

Изменено пользователем whale

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Попродуйте в билдере включить CodeGuard он отслеживает обращение к несуществующим объектам.

Из своего опыта: так как в билдере главная форма создается первой, то обращение к другим формам (которые создаются также билдером, а не самостоятельно через new() ) из события OnCreate - некорректно.

Можно в самом билдере пройтись по программе по шагам до получения ошибки. Или ошибка с при компиляции с полной отладкой (Full Debug) не появляется?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...