Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы по Embarcadero RAD Studio XE2 (Pulsar)

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57

Открыть новую тему     Написать ответ в эту тему

data man



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Обсуждаем новые возможности и баги
Просьба писать только про Embarcadero RAD Studio XE2 (Pulsar) - по остальным версиям есть соответствующие темы.

Вопросы вареза здесь не обсуждаются !!!
См. также:


Из слишком часто повторяемых вопросов:
  1. Почему EXE такие большие - перевод статьи от Andy тут, оригинал на страницу назад.
  2. Что случилось c авто-увеличением Build Number - Объяснение на англ.. Можно отключить встроенную функцию и добавить плагин, в котором есть "старый" авто-инкремент. Например DDevExtensions от Andy. У него так же есть хороший плагин IDE FixPack

Всего записей: 1696 | Зарегистр. 13-10-2005 | Отправлено: 23:54 27-07-2011 | Исправлено: Arioch1, 16:08 25-04-2013
delover

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Arioch1

Цитата:
ага, местечковый стандарт. За пределами "платформы 32"

Я не платформу имел ввиду а Delphi, которая не пишет никаких платформ когда я компилирую с extended. По отношению к Delphi32 - Delphi64 и есть местячковое никому не известное поле деятельности.  
 

Цитата:
вопросы аппаратной совместимости к Delphi отношения не имеют.

Вы похоже по диагонали читали. Я уже всё объяснил. Ещё раз, - имеется база данных в ней хранятся данные. Данные предварительно расчитанные но не окончательные, необходима их точность. База данных на Delphi, ПО разработанное на Delphi, заданная точность прописана в метрологических требованиях к ПО. ПО работает с аппаратурой в которой уже зашито 10 байт и прошивки пока не меняли. Моя задача хранить 10 байт - передавать 10 байт и давать возможность реализовать именно средствами Delphi именно продиктованную заранее точность без округлений продиктованных Эмбой или ещё кем-то.
 

Цитата:
и какую долю покупателей Delphi составляют институты метрологии ?

А что покупать то? ПО на Borland Pascal а не Delphi их вполне устраивает, а детский сад Delphi64 вызвал такой же шок у препода метролога. У него отбирают наносекунды за которые он может забраковать систему и потребовать взятку.
 

Цитата:
Вот и скажите, какой коммерческий смысл Эмбу усложнять компилятор ради вас одного?

Вы живёте в своих фантазиях. Лезете с советами BigNum, чтобы я свою библиотеку поставил на колени перед другой библиотекой. Решаете кому чем заниматься и что делать Эмбу если Intel наваяет новые инструкции то типа Эмб их отошлёт во всех версиях. Вобщем дальнейший разговор не имеет смысла, так как Вы уже за всех всё решили и без разницы о чём тут собеседник пытается растолковать.

Всего записей: 1395 | Зарегистр. 25-06-2007 | Отправлено: 15:05 27-03-2012
vez



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
delover

 
Одного не понял, к чему спорить если всё давно сделано и используется, зачем переходить на 64 бита и перекомпилировать программу с возможной потерей точности - что бы взять с заказчика доп. деньги? Ну не нравится - не пользуй

Всего записей: 561 | Зарегистр. 02-06-2003 | Отправлено: 15:12 27-03-2012
delover

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
vez
Кто-то и не будет переходить вообще, а я то сам пользуюсь себя не похоронил ещё и собираюсь со временем переписать свой архиватор с асм32 на асм64. Да и доп деньги тоже хорошо, иногда раскручиваются...
 
Проект XE2 Win64

Код:
function TIBCustomDataSet.Lookup(const KeyFields: string; const KeyValues: Variant;
                                 const ResultFields: string): Variant;
var
  fl: TList;
  CurBookmark: TBytes;
begin
  DisableControls;
  fl := TList.Create; -- Не используется нигде, перекочевал в InternalLocate
  CurBookmark := Bookmark;
  try
    First;
    if InternalLocate(KeyFields, KeyValues, []) then
    begin
      if (ResultFields <> '') then
        result := FieldValues[ResultFields]
      else
        result := NULL;
    end
    else
      result := Null;
  finally
    Bookmark := CurBookmark;
    fl.Free;
    EnableControls;
  end;
end;

Компилятор новый а "кака" та же что была в Delphi5 и ранее. Либо программисты лентяи либо ктото уважает человека писавшего этот код и не разрешает менять. Однако нам наслать на всех уважаемых русских электронщиков, они обязаны перейти на BigNum библиотеку. Мы уважаем только не своих пророков.)))
 
Добавлено:
Мне как то рассказывали как один уважаемо-крутой перец вынес свой старый линолеум в подъезд - вдруг кому пригодится... Ему не стали объяснять что каку надо нести к мусорным ящикам, ему просто через некоторое время вломили. Он значит поленился а другие должны с этой г жить.

Всего записей: 1395 | Зарегистр. 25-06-2007 | Отправлено: 15:33 27-03-2012 | Исправлено: delover, 17:30 27-03-2012
Arioch1



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Инструкции SSE2 введены оооочень давно. Плохо не то, что Дельфи их начал использовать, а то, что он не начал это делать намного раньше.
 

Цитата:
Вы уже за всех всё решили

Особенно за Интел, АМД и Эмбов, ага. Я им приказал, они сделали.
Это вы тут бунтуете, недовольны сложившимся порядком вещей.
Для меня 8-байтный Extended это гипотетическая неприятность, поморщился, учёл и всё.
Я согласен с рещением Эмбов, а вы - нет, вы и пытаетесь за них решить.
 

Цитата:
У него отбирают наносекунды

У него отобрали купленнуюю ранее Delphi ?
Или у него оттбрали 32-битный компилятор в XE2 ?
 
Не путайте "у меня отобрали" с " не сделали всех подарков по желанию моей левой пятки".
То что у вас было - то в точности у вас и осталось.
Никто вам не обязан что-то новое делать специально под ваши запросы.
 

Цитата:
Вы похоже по диагонали читали

Я читал как написано. Шина - значит шина. Если вы пишете одно, а имеете в виду что-то совсем другое, тут не я виноват.
 

Цитата:
чтобы я свою библиотеку поставил на колени перед другой библиотекой

Ой бида-бида. Перед компилятором ставить можно, перед Delphi RTL/VCL можно. А перед BigNum просто лучше на костёр пойти.!
А зачем вам BigNum, я уже два раза вам сообщал, о наличии библиотеки x87 для XE2/Win64 ?
Она наверное медленнее компилятора, но всяко быстрее целочисленной эмуляции.
Впрочем, тогда пожаловаться будет меньше поводов.
 

Цитата:
Delphi, которая не пишет никаких платформ когда я компилирую с extended

Delphi вообще никогда платформ не пишет.
В принципиально пользуетесь слчайно выбранными словами, чтобы вас точно понять нельзя было ?
 

Цитата:
Delphi64 и есть местячковое никому не известное поле деятельности.

Так не лезьте туда и будьте счастливы! Зачем вам этот кактус ?
 

Цитата:
реализовать именно средствами Delphi именно продиктованную заранее точность без округлений продиктованных Эмбой

Пользоваться Delphi, только Delphi, и при том быть полностью свободными от ограничений Delphi - прекрасная идея!

Всего записей: 904 | Зарегистр. 03-03-2010 | Отправлено: 15:44 27-03-2012
13th



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
может хватит уже спамить ни о чем?  мы вам всячески сочувствуем, но тут не кабинет психологической разгрузки.

Всего записей: 174 | Зарегистр. 25-07-2002 | Отправлено: 15:49 27-03-2012
Arioch1



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
срань надо нести к мусорным ящикам

Прекрасное сравнение. Вам весь подъезд заставили коробками Delphi XE2, что пройти нельзя ?
Или что угодно лишь бы за уши притянуть ?
 

Цитата:
Либо программисты лентяи

Либо извращения типа Master-detail на SQL нужны только маргиналам и всем остальным давно наплевать.
А пересечение этого множества с IBX-пользователями и того меньше.
 

Цитата:
наслать на всех уважаемых русских электронщиков

Насылайте, насылайте.
Интересно, они все вам дали право что-то заявлять от их лица ?
 

Цитата:
не своих пророков

Ух, высоко взлетели! Стал-быть вас Господь посетил ? :-D

Всего записей: 904 | Зарегистр. 03-03-2010 | Отправлено: 15:51 27-03-2012 | Исправлено: Arioch1, 15:56 27-03-2012
X11



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ХВАТИТ

----------
/не мы такие, жизнь такая/

Всего записей: 3253 | Зарегистр. 24-11-2005 | Отправлено: 16:09 27-03-2012
Man_Without_Face



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Перевожу проект с 2007 на XE2. В проекте через xmlMapper + xmlTransform, xmlTransformProvider загружаю из xml файла инфу в ClientDataSet. После редактирования делаю ApplyUpdates(-1). Вылетает ошибка "Record not found or changed by another user". Нашел такую ошибку при сохранении в базу, лечиться UpdateMode у DataSetProvider на KeyOnly (я его не использую). Но у меня записывает обратно в xml. На 2007 работало все отлично, как это вылечить на XE2, спасибо.

Всего записей: 381 | Зарегистр. 25-01-2010 | Отправлено: 17:56 29-03-2012
X11



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Может проблемы с кодировками?

----------
/не мы такие, жизнь такая/

Всего записей: 3253 | Зарегистр. 24-11-2005 | Отправлено: 22:54 29-03-2012
Man_Without_Face



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Может проблемы с кодировками?

Если ничего не менять в таблице (датасете), то сохраняется нормально. Если поменять, то из под делфы вылетает вышеописанная ошибка. Если просто экзешник запустить и поменять записи то сохраняется, но при следующем открытии из русского шрифта получаются кракозяблы. Такое ощущение что по лишнему байту дописали. Пробовал и string, и widestring, и ansistring. Кодировка везде стоит windows-1251.

Всего записей: 381 | Зарегистр. 25-01-2010 | Отправлено: 09:29 30-03-2012 | Исправлено: Man_Without_Face, 09:32 30-03-2012
mdid

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
кстати народ...а кто то может сказать почему из года в года такие свойства как width height и тд имеют тип integer? хз чего это именно ща мне так свербит...раньше просто беспокоило а вот сейчас прям засвербело...смысл этого типа в этих свойствах?минусовое значение не имеет смысла..проще visible изменить а вот ширину допустим формы в 2147483647 я себе представляю с трудом...на лицо явная избыточность и конец которой не виден...может я всей глубины задумки не понимаю?

Всего записей: 1298 | Зарегистр. 13-02-2006 | Отправлено: 14:58 03-04-2012
Arioch1



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
а в чём избыточность-то ?
 
значения больше 32K все равно использовать нельзя, ведь Top, Left, TPoint.X & .Y - знаковые.
Так пусть лучше у них будет такой же тип, как у Left/Top, чем получать бесконечные варнинги.
 
x.Top := y.Top + y.Height; -> Warning: mixing signed and unsigned, extended values to 64-bit

Всего записей: 904 | Зарегистр. 03-03-2010 | Отправлено: 15:05 03-04-2012 | Исправлено: Arioch1, 15:05 03-04-2012
mdid

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Arioch1
ну так топ и лефт тоже изменить...я просто не понимаю смысла позиционирования объекта в диапазоне -2147483648..2147484647...тем более периодически диапазон этого типа увеличивается..  

Всего записей: 1298 | Зарегистр. 13-02-2006 | Отправлено: 15:18 03-04-2012
Arioch1



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
так ты что предлагаешь, Int16, -32K .. +32K ?
 
а зачем ? быстрее это не будет.
Скорее наоборот, на преобразованиях типов будешь лишнee время терять.
http://msdn.microsoft.com/en-us/library/windows/desktop/ms633545(v=vs.85).aspx
 
Памяти тоже не сэкономишь, учитывая сколько других свойств есть в TForm. Один юникодный Caption во много раз больше тратит.
 
Зачем ?

Всего записей: 904 | Зарегистр. 03-03-2010 | Отправлено: 15:29 03-04-2012
mdid

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Arioch1
хз..просто свербит))) есть куча свойств тип которых мне непонятен..тем более переход с integer на smallint ровно в 2 раза урезало бы память на каждом свойстве....а с учетом что таких свойств у компонента 5-10...и компонентов на форме ~50-80...и форм в нормально проекте столько же... то была бы экономия

Всего записей: 1298 | Зарегистр. 13-02-2006 | Отправлено: 17:47 03-04-2012
Frodo_Torbins

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
mdid
VCL - это вообще одна сплошная трата памяти, одни dfm-ки в ресурсах с их парсингом чего стоят. Добавьте сюда еще RTTI и выравнивание полей обьектов, массивов... Поэтому для тру программеров есть альтернатива: KOL, WinAPI, асемблер и т. д. Вот только это жутко неудобно.
Кстати в FM эти типы вообще Double - сплошная векторность одним словом.

Всего записей: 2318 | Зарегистр. 24-05-2007 | Отправлено: 18:17 03-04-2012 | Исправлено: Frodo_Torbins, 18:19 03-04-2012
delover

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Man_Without_Face
)nosmileyo)2dont
 
Добавлено:
Хорошая задача. КУуул.

Всего записей: 1395 | Зарегистр. 25-06-2007 | Отправлено: 20:52 03-04-2012
Arioch1



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
mdid на каждом из целых 4-х свойств! ценой замедления работы. Сколько это в процентах пусть даже не у TCustomForm, а у TWinControl ?
Уж лучше пофантазируй за замену boolean'ов 1-битовыми переменными, или DFM без текстовых названий свойств - ещё и ускорение м.б. получишь
 
Нет, я понимаю, что 640КБ хватит на всех, это въедается.
Когда появидись 2-гигабайтные AnsiString я думал, ну да, 256 - это млаовато. Но лучше бы сделали строки по 32К - съэкономили бы два байта на счётчике. А строки длиннее 32К вменяемым людям не нужны...
 
А потом я смотрел на 4-кб DLL'ку и думал "многовато это дял простого плагина!". Убрал почти всё, что Дельфи добавила после Турбо Паскаля. Исключения, оптимизированный heap, варианты (вот чего не жалко было), ещё что-то. Yt помню, можно ли было вырезать AnsiString.
В общем, переписал серьёзно! - и D5 подарила мне прелестное дитя: DLL'ку размером 2КБ. 50% экономии на размере, не мелочь.  
Вот только оказалось, Win2K не умеет загружать такие маленькие DLLки
 
 
Короче, действительно, напиши что-нибудь заметного размера на KOL-MCK, после этого свербит азметно меньше
 
Добавлено:

Цитата:
с учетом что таких свойств у компонента 5-10...и компонентов на форме ~50-80...и форм в нормально проекте столько же... то была бы экономия

 
Возьмём по максимуму.  2*10*80*80 = 128 000 байт < 128KB.
Уменьши стeк на 128КБ и успокой свой зуд :-D
Поменяй иконку и освободи в 2,5 раза больше!
 
 
Вот есть ещё менее радикальный подход, чем KOL-MCK: http://bouchez.info/lvcl.html

Всего записей: 904 | Зарегистр. 03-03-2010 | Отправлено: 21:59 03-04-2012 | Исправлено: Arioch1, 22:16 03-04-2012
Eternal_Shield

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
off-topic
Мне бы ваши проблемы, нашли что обсуждать, блин ... Каждый раз заходя сюда, надеюсь встретить интересный вопрос/ответ/солюшон ... узнать что-то новое. Но нет, каждый раз я здесь и каждый раз какие-то непонятные тёрки/потоки сознания/прочая дурь. Прямо базар какой-то, простите;

Всего записей: 766 | Зарегистр. 18-05-2009 | Отправлено: 12:00 04-04-2012
Frodo_Torbins

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Eternal_Shield
Вам прямая дорога на StackOverflow.

Всего записей: 2318 | Зарегистр. 24-05-2007 | Отправлено: 12:32 04-04-2012
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы по Embarcadero RAD Studio XE2 (Pulsar)


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru