Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2010.01.24;
Скачать: [xml.tar.bz2];

Вниз

Как сделать проект автономным   Найти похожие ветки 

 
Matveih1 ©   (2009-12-04 16:53) [0]

Добрый день.
Вопрос наверно глупый, но как мне сделать проект автономным?
Есть основная программа и много *.bpl, так вот при загрузке .bpl пишет что не хватает какой нить стандартной bpl. Как этого избежать?


 
Плохиш ©   (2009-12-04 16:55) [1]


> Как этого избежать?

Распостранять с программой все требуемые стандартные bpl.


 
Медвежонок Пятачок ©   (2009-12-04 16:55) [2]

избежать этого можно вдумчивым проектированием


 
Matveih1 ©   (2009-12-04 17:02) [3]


> Плохиш ©   (04.12.09 16:55) [1]
>
>
> > Как этого избежать?
>
> Распостранять с программой все требуемые стандартные bpl.
>

это не приемлемо.

> Медвежонок Пятачок ©   (04.12.09 16:55) [2]
>
> избежать этого можно вдумчивым проектированием

это как? В bpl много форм которые используют разные компоненты (соответственно разные стандартные bpl)


 
Медвежонок Пятачок ©   (2009-12-04 17:03) [4]

это как?

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


 
Matveih1 ©   (2009-12-04 17:07) [5]

еще раз. Основной exe грузиться нормально, т.к. там только кнопки которые грузят разные BPL, и вот при загрузке bpl начинает просить стандартные bpl. Какие галочки я тронул?


 
Matveih1 ©   (2009-12-04 17:09) [6]

Галочка Build with runtime packages не установлена


 
Демо ©   (2009-12-04 17:10) [7]


> Matveih1 ©   (04.12.09 17:07) [5]
> Какие галочки я тронул?


Build with runtime packages?


 
Демо ©   (2009-12-04 17:10) [8]


> Галочка Build with runtime packages не установлена


Тогда сделай полный ребилд приложения


 
Медвежонок Пятачок ©   (2009-12-04 17:11) [9]

Галочка Build with runtime packages не установлена

Этого недостаточно.
Все что в собственной бпл - перенсти в exe

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


 
Matveih1 ©   (2009-12-04 17:13) [10]


> Демо ©   (04.12.09 17:10) [8]
>
>
> > Галочка Build with runtime packages не установлена
>
>
> Тогда сделай полный ребилд приложения

делал не помогает.


> Медвежонок Пятачок ©   (04.12.09 17:11) [9]
>
> Галочка Build with runtime packages не установлена
>
> Этого недостаточно.
> Все что в собственной бпл - перенсти в exe
>
> иными словами лоадпакадж для тебя запрещен.
> так как стандартные бпл ты распространять не хочешь


т.е. в основном exe прописать классы из других модулей?


 
korn   (2009-12-04 17:15) [11]


> Matveih1 ©   (04.12.09 17:09) [6]

Ну так и вот. "Как сделать проект автономным"? Собирай моноблоком, раз [1] не подходит.


 
Плохиш ©   (2009-12-04 17:16) [12]


> Matveih1 ©   (04.12.09 17:02) [3]
>
>
> > Плохиш ©   (04.12.09 16:55) [1]
> >
> >
> > > Как этого избежать?
> >
> > Распостранять с программой все требуемые стандартные bpl.
>
> >
>
> это не приемлемо.

Хм, вы хотите кататься на велосипеде, но не таскать с собой раму от этого велосипеда?


 
Matveih1 ©   (2009-12-04 17:21) [13]

значит никак? Т.е. придется таскать с собой все стандартные bpl? А я подумал что это детский вопрос. А вкомпилить из никак нельзя в BPL?


 
clickmaker ©   (2009-12-04 17:26) [14]

> значит никак?

да почему никак.
взять код из всех своих bpl и добавить в проект exe, потом пересобрать. при этом убедиться, что пресловутая галка не установлена


 
Медвежонок Пятачок ©   (2009-12-04 17:29) [15]

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


 
Matveih1 ©   (2009-12-04 17:29) [16]

монолит не устроит. Нужно именно с bpl, но так что бы ставить только свои bpl и exe


 
clickmaker ©   (2009-12-04 17:33) [17]

> Нужно именно с bpl, но так что бы ставить только свои bpl
> и exe

теоретически можно.
но тогда exe и bpl должны обмениваться только общими типами данных, ну как если бы они были написаны на чистом апи.
то есть никаких TForm, TDatabase или TFont как параметров


 
Matveih1 ©   (2009-12-04 17:35) [18]

хорошо. Пока все так! Но ошибка то остается (точнее не ошибка)


 
clickmaker ©   (2009-12-04 17:37) [19]

> точнее не ошибка

bpl тогда надо рассматривать как dll
никаких LoadPackage. про удобство доступа к общим объектам, таким как application, screen, придется забыть


 
clickmaker ©   (2009-12-04 17:39) [20]

собственно, нахрена тогда нужна bpl?
пишем dll, хоть на дельфи, хоть на чем, грузим LoadLibrary, вызываем функции, получаем результаты.
компактней, хоть и неудобней


 
Игорь Шевченко ©   (2009-12-04 17:55) [21]


> Как этого избежать?


Таскать стандартные bpl, все остальное - от лукавого.


> это не приемлемо.


Это твои проблемы


 
Matveih1 ©   (2009-12-04 17:58) [22]


> Игорь Шевченко


> Это твои проблемы

Спасибо за помощь.


 
korneley ©   (2009-12-04 18:06) [23]

А что именно неприемлемо? Чую, проект-то не свой...


 
korneley ©   (2009-12-04 18:07) [24]

Да, не "что", а "почему" :)


 
Matveih1 ©   (2009-12-06 17:43) [25]

Проект свой. Только пишу я его не один и есть стандарты по которым необходимо использовать bpl вот я и пытаю добить от Вас помощи как это реализовать. Что бы пользователю ставить только 1 exe и несколько bpl которые потом менять на более новые (т.е. с новым функционалом)


 
Сергей М. ©   (2009-12-06 18:06) [26]


> Что бы пользователю ставить только 1 exe


Ну вот и засунь все необходимые стандартные bpl ему в ресурсы.
И извлекай их при старте в случае необходимости.
Если ты не внемлешь голосу разума)


 
Юрий Зотов ©   (2009-12-06 21:26) [27]

> Matveih1 ©   (06.12.09 17:43) [25]

> как это реализовать. Что бы пользователю ставить
> только 1 exe и несколько bpl которые потом менять на более
> новые (т.е. с новым функционалом)

1. Включить галку Build with runtime packages.

2. Из списка пакетов (который рядом с этой галкой) удалить все стандартные BPL и оставить в нем только те, которые надо "потом менять на более новые".

3. Сделать полный Build.


 
Matveih1 ©   (2009-12-06 21:58) [28]

даже если так, то все равно при загрузке просит стандартные пакеты.
если делать с Build with runtime packages то тогда получается отпадает необходимость динамически загружать паке по мере необходимости, а это хотелось бы оставить, что бы не грузить сразу все.
Но как я уже сказал даже если выставить галку и прописать только свои пакеты, все равно просит стандартные.



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

Форум: "Начинающим";
Текущий архив: 2010.01.24;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.52 MB
Время: 0.005 c
9-1184091410
Evgraf
2007-07-10 22:16
2010.01.24
D3DXLoadMeshFromX не может найти файл меша в .x формате


11-1160629902
Grademax
2006-10-12 09:11
2010.01.24
Как програмно остановить USB-Flash?


1-1233798973
ply
2009-02-05 04:56
2010.01.24
Разная процедура для каждой формы.. как?


15-1258368049
stas
2009-11-16 13:40
2010.01.24
TWebBrowser


2-1258096612
xtd
2009-11-13 10:16
2010.01.24
почему в TWebBrowser не работает JavaScript ?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский