Ru-Board.club
← Вернуться в раздел «Прикладное программирование»

» Вопросы по Delphi (версии 2009, 2010 Weaver, 2011 Fulcrum)

Автор: Frodo_Torbins
Дата сообщения: 16.06.2012 14:52
neznayka3
При желании моджно не только форму, но и скрипт для какого-нибудь PascalScript туда впихнуть.
Автор: akaGM
Дата сообщения: 19.06.2012 16:48
братцы, проверьте список, начиная с Д2009

VER200 -- Delphi 2009
VER210 -- Delphi 2010
VER220 -- Delphi 2011
VER230 -- Delphi 2012

так?
Автор: ant0ni02004
Дата сообщения: 19.06.2012 19:57
akaGM
VER220 = Delphi XE
VER230 = Delphi XE2
Автор: akaGM
Дата сообщения: 19.06.2012 20:37
ant0ni02004
да, спасибо, мне важны глоб. дефайны слева в моей таблице
так после VER200 что идёт, VER210?
Автор: Frodo_Torbins
Дата сообщения: 20.06.2012 13:20
akaGM
http://stackoverflow.com/a/1373264/217909
Автор: akaGM
Дата сообщения: 20.06.2012 13:48
Frodo_Torbins
ну так... больше чем спасибо...
Автор: neznayka3
Дата сообщения: 06.07.2012 19:48
в программе используются DevExp, AnyDac,FastReport,FlexCel и все. 250 dcu занимает 9 метров, а exe занимает 97 метров.
upx сжимает до 27. чую, что столько ехе не весит, как быть?

PS: XE2
Автор: Frodo_Torbins
Дата сообщения: 06.07.2012 20:33
neznayka3
250 dcu это вместе с пакетами компонент или сама программа? Плюс в девках ведь еще куча скинов. Если их все вместе посчитать, то как раз сто метров и получится.
Еще стоит проверить опции линкера. В XE2 по умолчанию включена линковка отладочных символов в Debug конфигурации.
Автор: neznayka3
Дата сообщения: 07.07.2012 05:25
Frodo_Torbins

Цитата:
250 dcu это вместе с пакетами компонент или сама программа?
программа + FastReport
Поставил Release получил 50 метров) спасибо
Автор: exteris
Дата сообщения: 07.07.2012 09:34
Пустой проект + cxGrid + все скины - уже 20 метров.
Автор: ant0ni02004
Дата сообщения: 08.07.2012 15:16
neznayka3
проще будет проверить так: в настройках компиляции проэкта указать
Unit output directory = Dcu (ну и создать такую папку - %Projecrdir%\Dcu)
тогда все dcu будут скомпилированы туда, в т.ч. - и компоненты, и системные vcl
сразу будет видно сколько они действительно занимают
Автор: XPerformer
Дата сообщения: 08.07.2012 15:39
ant0ni02004
А мне как раз обратную задачу надо решить - как бы сделать, чтобы в папку с DCU попадали только dcu этого проекта (без библиотек и системных модулей). В старых версиях делфи так и было, а в XE так можно сделать?
Автор: Frodo_Torbins
Дата сообщения: 08.07.2012 16:05
XPerformer
Можно, для этого pas-файлы компонентов должны лежать в папках, которые прописаны в "Browsing path", но не прописаны в "Library path". А в папке, прописаной в "Library path", должны лежать только dcu-шки (для каждой платформы своя папка). Кстати dcu-шки можно разделить на дебаг и релиз версии с помощью "Debug DCU path". В результате должно получится "количество платформ" * 2 + 1 папок.
Плюс такая организация позволила мне избавится от бага, когда при билде с рантайм пакетами создавались новые копии этих пакетов но с расширением exe.
Автор: neznayka3
Дата сообщения: 08.07.2012 16:10
ant0ni02004
у меня .\$(Platform)\$(Config)\dcu но попадают туда только мои и FR
Автор: XPerformer
Дата сообщения: 08.07.2012 16:22
Frodo_Torbins
Спасибо.
А еще такая ситуация. Я использую для примера AlphaControls с офсайта без исходников, и когда возникает какое-то исключение, среда пытается найти исходник для отладки, а его нет, и проблема собственно, не в нем, а в моем коде.
Путь к dcu AlphaControls я прописываю в Library Path
То же касается любых компонентов (неважно, есть исходники или нет), я не хочу чтобы среда пыталась их дебажить, куча времени уходит на лишние телодвижения

Как-то можно заставить среду пропускать определенные компоненты, если я точно знаю, что проблема не в них?
Автор: Frodo_Torbins
Дата сообщения: 08.07.2012 19:04
XPerformer
Ихние dcu-шки должны быть скомпилены без отладочной инфы (Project > Options > Delphi Compiler > Compiling > Debug information).
Автор: XPerformer
Дата сообщения: 08.07.2012 19:17
Frodo_Torbins
В принципе так и думал, раньше это помогало, но дело в том, что для AlphaControls в проекте стоит
{$DEBUGINFO OFF}
Автор: Frodo_Torbins
Дата сообщения: 08.07.2012 19:24
XPerformer
Вы же говорили, что у вас альфы без исходников?
Автор: XPerformer
Дата сообщения: 08.07.2012 19:29
Frodo_Torbins
В поставку с офсайта включается *.dcu, *.dproj, *.dpk и несколько pas типа sStrings.pas
В файле acntDelphiXE.dpk стоит {$DEBUGINFO OFF}
Автор: Frodo_Torbins
Дата сообщения: 08.07.2012 19:56
XPerformer
Не факт, что альфы компилились с настройками из этого файла. Попробуйте создать простенький проектик с альфами и сгенерировать его map-файл. Какая информация об альфовских юнитах в него попадет?
Автор: XPerformer
Дата сообщения: 08.07.2012 20:11
Frodo_Torbins
Номера строк попадают
похоже, вы правы
Автор: neznayka3
Дата сообщения: 09.07.2012 18:19
подскажите, что почитать про исключения. хочу общий обработчик повесить на все приложение. если не это не правильно, то как надо?. в основном из-за ошибок, которое происходят в бд. народ хочет нормальный перевод.
Автор: XPerformer
Дата сообщения: 09.07.2012 18:25
neznayka3
Application.OnException, Application.HandleException
почитать help для начала
Автор: neznayka3
Дата сообщения: 09.07.2012 18:49
XPerformer

Цитата:
Application.OnException

там и хочу общий повесить. интересуют "хорошие практики". там же будет куча исключений - от бд, приложения и тд.
Автор: XPerformer
Дата сообщения: 09.07.2012 19:32
neznayka3
ну в смысле был вопрос что почитать, а хелп как известно плохого не посоветует
как различать исключения пример тут
http://www.chami.com/tips/delphi/011497D.html
Автор: Frodo_Torbins
Дата сообщения: 09.07.2012 21:56
neznayka3
Обработка ошибок, и далее того же автора: http://www.gunsmoker.ru/2010/03/blog-post.html
Автор: XPerformer
Дата сообщения: 10.07.2012 00:08
Frodo_Torbins
Спасибо, вот это статья - по объему просто книга
Но для начинающего, может, проще для начала взять что-то готовое - типа EurekaLog
Автор: Frodo_Torbins
Дата сообщения: 10.07.2012 23:33
XPerformer
Время, потраченное на чтение этих статей, окупится не один десяток раз. А эврикой еще нужно уметь пользоваться, и как раз Александр о ней много пишет.
Автор: XPerformer
Дата сообщения: 10.07.2012 23:40
Frodo_Torbins
Эврика с нулевыми усилиями человеку с нулевыми знаниями дает строчку кода, где произошла ошибка. Если этого недостаточно, чтобы пришло озарение, где ошибка в твоем собственном коде (сложность которого не может быть выше уровня понимания самого же автора), то уж не знаю чем и помочь...
А научиться дебажить по статьям невозможно, уже проверено... Нужен личный опыт
Автор: neznayka3
Дата сообщения: 11.07.2012 14:54
хочу сделать прелоадер как дубльгис, те пока приложение не загрузилось - показать что не висим. 70 метров по вайфаю у некоторых долго качается. клиент лежит на сетевом диске. как узнать, что оно загрузилось в память?

Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172

Предыдущая тема: Установка копоненты ZipTV


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.