Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Делфи _ ошибка запуска приложения - ?

Автор: 1147 20.04.2010 3:02

При запуске программы появляется такая ошибка: не удалось запустить поскольку не был найден rtx100.bpl повторная установка исправит эту проблему. В чем может быть причина? Что такое rtx100.bpl ?

Автор: volvo 20.04.2010 3:44

Приложение - твое? Исходники есть? Тогда в файле *.dproj глянь, есть ли ссылка на этот rtx100.bpl? Где он должен лежать? Имя просто очень странное, никогда такого не видел. Обычно проблема с RTL старой версии, но RTX - первый раз вижу.

Возможно, использовались какие-то сторонние компоненты, которые были удалены после того, как программа была откомпилирована?

Автор: 1147 20.04.2010 3:49

да, приложение мое, на пк где установлен Delphi, проблем нет, при запуске на других ПК, возникает такая ошибка
Удалений небыло после компиляции, об ошибке мне сообщили по icq невено, сейчас проверил у себя, действительно не rtx а rtl100.bpl, приношу извинения за неточность. Какая проблема в этом случае?

Автор: volvo 20.04.2010 4:34

Видимо, программа компилировалась с "Build with Runtime Packages"? Тогда в папке \WINDOWS\system32 (там где проект компилируется, естественно, на машине с установленной Дельфи) лежит этот файл, надо скопировать его в папку с проектом. И не только его. Как минимум еще VCLxxx.bpl (у меня просто VCL120 и RTL120, так что зависит от версии компилятора), возможно - понадобятся еще какие-то пакеты.

Автор: 1147 20.04.2010 4:48

Цитата
Видимо, программа компилировалась с "Build with Runtime Packages"
Этого я не знаю, но от чего зависит, компилировалась ли программа с Build with Runtime Packages или без него? Потому что такая проблема впервые возникла

Автор: volvo 20.04.2010 5:06

От наличия галки или ее отсутствия. Если там галку убрать (вернее, ее там по умолчанию и нет. Если не поставить) - то программа вообще не запустится на другой машине без Дельфи. Если поставишь - то сможешь запустить. Но видишь, что получается? Если пакеты не находятся - программа опять не запускается. Тогда пакеты надо положить рядом с EXE-шником.

Автор: 1147 20.04.2010 16:26

Галку убрал, после этого программа стала запускаться на других ПК, но почему-то размер ЕХЕ-файла увеличился на 4Мб! Чем это может объясняться? Насколько важны Runtime Packages? Программа что-нибудь теряет после их исключения?

Автор: volvo 20.04.2010 16:42

Убрал галку -> заставил компилятор ВСЕ, что нужно для работы программы, забросить в EXE. Естественно, размер EXE увеличивается, но программа способна запуститься везде, даже там где Дельфи отродясь не было установлено...

Поставил галку -> все, что можно остается в рантайм-пакетах (RTLxxx, VCLxxx, DBRTLxxx - если есть работа с БД, может быть еще что-то специфическое), которые должны быть доступны из программы. Если на другой машине нет этих рантайм-пакетов - что произойдет? Откуда программа должна взять то, чего на компьютере нет? Да вот то, что описано в первом посте и произойдет.