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

Вниз

Размер программки в C++ Builder   Найти похожие ветки 

 
anod   (2002-04-09 16:26) [0]

Есть такой вопрос.
На Делфи эта программка занимает 300 кбайт. Когда я её переложил на Билдер она стала занимать 56кб. Выложил я её в сеть, а мне прходит сообщение, что программка-то не работает, а тербует библиотеки дополнительные:
borlndmm.dll
cp3245mt.dll
vcl40.bpl
vcljpg40.bpl
vclx40.bpl
Эти библиотеки занимают 3мб. Что это за библиотеки? Можно ли их отключить в проекте? И почему Делфи их не использует?


 
Andrey   (2002-04-09 16:38) [1]

Delphi->MainMenu->Project->Project Option->Packages-> Build with runtime packages - поставь галочку и у Delphi получится программа размером около 56кб.


 
VictorT   (2002-04-09 16:38) [2]

Proect->Options->Packages->Build with runtime packages


 
Alx2   (2002-04-09 16:40) [3]

Поэтому и "стала занимать 56кб."
"Build with runtime packages" отключи :)


 
toorick   (2002-04-09 16:40) [4]

bpl - борландовский сильно хитроумный аналог dll.
делфи их использует, но не целиком, а только (почти только :) )нужные кусочки путем включения их в 300-кб-ный экзешник.


 
anod   (2002-04-09 16:55) [5]

Да, я это нашел, стала весить 560 кб из списка все равно требует библиотеки
borlndmm.dll
cp3245mt.dll
Это ещё метр....
Значит то, что я слышал о большой разнице в размерах файлов ерунда? Что Си++ поэтому рулит, по сравнению с Делфи?


 
Виктор Щербаков   (2002-04-09 17:03) [6]

Если и "рулит", то точно не по-этому. А что касается Builder, то по размеру exe он проигрывает Delphi. Но у него другие достоинства.


 
wicked   (2002-04-09 17:04) [7]


> Да, я это нашел, стала весить 560 кб из списка все равно
> требует библиотеки
> borlndmm.dll
> cp3245mt.dll
> Это ещё метр....

там еще в опциях что-то про RTL было... поищи и отключи...


 
anod   (2002-04-09 17:11) [8]


> Если и "рулит", то точно не по-этому

А где же пишут утилитка, которые весят по 200кб, а смысловой нагрузки, функциональности и др. раз в 10 больше. Что, надо все на API писать?
Я почемуто книжек по АПИ не видел. Может плохо смотрел. Если знаете, подскажите что-нибудь получше.


 
Suntechnic   (2002-04-09 17:41) [9]

>там еще в опциях что-то про RTL было... поищи и отключи...
А если точнее то
Linker->Use dynamic RTL убрать!!!

>anod © (09.04.02 17:11)
>А где же пишут утилитка, которые весят по 200кб, а смысловой нагрузки, функциональности и др. раз в 10 больше.

Дык естественно, если надо простенькую утилитку, то в плане экономии размера её лучше на Win API писать. Правда человек, который Win API в глаза до этого не видел, а писал всё на Билдере и на Делфи, плеватся будет очень долго и навряд ли у него появится желание что либо на Win API делать...

А в плане размеров программ из под Билдера и Делфи... как они могут сильно в размерах отличаться, если они на одной VCL построены?


 
PVOzerski   (2002-04-09 17:47) [10]

> borlndmm.dll
А вот чует моё сердце, выключением опций здесь не обойтись... DLL-ка-то это не простая,
а менеджер разделяемой памяти и иногда нужна весьма. Суть - heap manager, общий для
экзешника и вызываемых им ДЛЛей (естественно, подразумевается, что всё это написано на
продуктах Borland и умеет с этим менеджером работать). Типичный пример, когда использование
этого менеждера (или какой-нибудь его самодельной альтернативы) необходимо - передача в dll
в качестве параметров Паскальных длинных строк.


 
Suntechnic   (2002-04-09 17:59) [11]

>PVOzerski © (09.04.02 17:47)
>А вот чует моё сердце, выключением опций здесь не обойтись...
Обойтись, обойтись :)... отключаешь опцию с RTL о которой я упоминал выше и уже никому ничего не надо :)


 
paul_shmakov   (2002-04-09 18:11) [12]

2 anod:
"А где же пишут утилитка, которые весят по 200кб, а смысловой нагрузки, функциональности и др. раз в 10 больше. Что, надо все на API писать?"

ну почему же сразу на api? часто используется mfc (там тоже runtime dll, зато поставляется почти со всеми версиями windows), atl/wtl - это простые шаблоны-обертки вокруг winapi.

на чистом api писать неудобно. мне нравится wtl. размер программы начинается с 3кб и т.д.


 
anod   (2002-04-10 00:16) [13]

2 paul_shmakov
Не подскажите, где можно почитать по wtl


 
Suntechnic   (2002-04-10 00:42) [14]

>anod © (10.04.02 00:16)
WTL(Windows Template Library) можешь тут почитать http://www.idevresource.com/wtl/
...только опять же... если для тебя слова Win API, MFC, ATL ничего не значат туговато придётся...


 
SPeller   (2002-04-10 01:40) [15]

>anod © (09.04.02 17:11)
>Я почемуто книжек по АПИ не видел. Может плохо смотрел. Если знаете, подскажите что-нибудь получше.


Дэн Эпплман "Win32 API и Visual Basic" изд-во Питер. Классная книга хоть и для VB написана. Зато на русском описывает большинство часто использующихся функций, что к чему и т.д. Главное - помогает понять, что такое API и с чем его едят. После прочтения и изучения книги, написание на апи не составит особого труда. Рекомендую всем начинающим !


 
paul_shmakov   (2002-04-10 12:33) [16]

2 anod:
на rsdn есть две статьи
http://www.rsdn.ru/article/?wtl/wtl-1.xml
http://www.rsdn.ru/article/?wtl/wtl-2.xml

но, как сказал Suntechnic, "если для тебя слова Win API, MFC, ATL ничего не значат туговато придётся..."



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

Форум: "Потрепаться";
Текущий архив: 2002.05.20;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.48 MB
Время: 0.007 c
1-64577
Николай.
2002-05-05 11:10
2002.05.20
Поменять размер JPEG-картинки


3-64491
ao1973
2002-04-22 15:55
2002.05.20
Как создать програмно таблицу access-a


14-64841
Феликс
2002-04-12 17:03
2002.05.20
Почем нынче курсовые, доклады, рефераты?


14-64810
False_Delirium
2002-04-11 09:26
2002.05.20
Консультирует Борланд...


1-64629
kserg@ukr.net
2002-05-08 11:12
2002.05.20
TStringGrid - как раскрасить строки/ячейки ?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский