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

Вниз

Форма в dll. Пытаюсь разобраться   Найти похожие ветки 

 
Дмитрий Белькевич   (2010-03-30 19:42) [40]


> Зачем? В СОМ есть версионность. Новая версия COM - старые
> интерфейсы без изменений, а новые добавляются. Таким образом
> старые версии проекта будут обращаться к старым интерфейсам,
>  а в новой версии проекта используем новые интерфейсы. См.
>  как реализованы майкрософтовские офис, IE.


Ну и dll"ки тоже как бы, в нормальных условиях, должны работать нормально. Однако dll hell имеем.


 
Игорь Шевченко ©   (2010-03-30 19:58) [41]

evvcom ©   (30.03.10 19:34) [39]


> Очень старые проекты на очень старых Delphi писаны, не очень
> старые на не очень старых и т.д. :)


Иногда проще перекомпилировать очень старые проекты на не очень старую версию Delphi :)


 
Игорь Шевченко ©   (2010-03-30 19:59) [42]

Дмитрий Белькевич   (30.03.10 19:42) [40]


> Однако dll hell имеем.


Вы имеете или MS имеет ? Это несколько разные вещи...


 
Дмитрий Белькевич   (2010-03-30 22:20) [43]


> Вы имеете или MS имеет ? Это несколько разные вещи...


Юзеры имеют.


 
Игорь Шевченко ©   (2010-03-30 22:48) [44]

Дмитрий Белькевич   (30.03.10 22:20) [43]

Очевидно, тогда слово имеем в посте [40] следует употреблять в ином падеже, нес па ? А то я тебя неверно понял, хотел посочувствовать :)


 
Дмитрий Белькевич   (2010-03-30 23:34) [45]


> Очевидно, тогда слово имеем в посте [40] следует употреблять
> в ином падеже, нес па ? А то я тебя неверно понял, хотел
> посочувствовать :)


Не знаю, где какой должен быть падеж, однако dll hell - это известная и признанная MS"ом проблема. Они и бороться с адом вроде пытаются. Где в Win длл"льный ад лежит? Папка WinSxS наиболее похожа?

В наших приложениях dll hell, к счастью, нет, из-за отсутствия самих этих dll. Кроме разве что указанных проблем с COM серверами. Но эта проблема, к счастью, не напрягает и кроме как у себя на буке я её пока нигде не видел.

Скайп, кстати, идеальное приложение в плане дллок - лежит один, толстый, Skype.exe, и больше ничего. В appdata только несколько папок с юзерскими данными. Нам к идеалу, увы, не приблизиться - некоторые сторонние библиотеки используем, которые переписывать на Делфи долго и бессмысленно.


 
Anatoly Podgoretsky ©   (2010-03-30 23:39) [46]

> Дмитрий Белькевич  (30.03.2010 23:34:45)  [45]

Она предназначено для борьбы с этой проблемой, но используется в основном для ,NET программ, судя по размерам ада очень много. У меня аж на 9 гб, свыше 12 000 папок


 
Игорь Шевченко ©   (2010-03-31 00:03) [47]

Дмитрий Белькевич   (30.03.10 23:34) [45]

MS Office, Visual Studio, Delphi itself - идеальные приложения в плане DLL - несколько EXEшников, куча DLL, все прекрасно работают. Апдейты проходят на ура (не то, что у толстого скайпа, который надо качать целиком)


> Где в Win длл"льный ад лежит? Папка WinSxS наиболее похожа?


Для пущей информации - папка WinSxS появилась исключительно в WinXP и выше, а перечисленные вначале продукты работали и до того :)


> В наших приложениях dll hell, к счастью, нет, из-за отсутствия
> самих этих dll


В наших приложения тоже нет DLL Hell, а DLL и BPL много. Но и приложений тоже немало.

Насчет толстого скайпа - оракл всяко толще скайпа, однако на фоне толстенного oracle.exe (90 метров весом) еще и DLL-ей, как звезд на небе. И без всякого вам DLL Hell.


 
Германн ©   (2010-03-31 01:58) [48]

Бессмысленный какой-то спор. Имхо зря Леонид привёл ту ссылку.
Главное что к самой Дельфи этот спор имеет очень сомнительное отношение. И чего ради этот спор в "Основной"?


 
evvcom ©   (2010-03-31 13:53) [49]


> Иногда проще перекомпилировать очень старые проекты на не
> очень старую версию Delphi :)

Иногда да, но иногда без корректировки не компилится. А учитывая чисто русский подход: "Взять всё нах и переписать!" не очень хочется корректировать кем-то криво написанное, добавляя еще и своей кривизны.
- Папа, а почему солнце утром восходит на востоке, а садится вечером на западе?
- Сынок, а ты проверял? Эффект устойчивый?
- Да, такое каждый день бывает.
- Ради бога, сынок, ничего не трогай! Работает и пусть дальше так работает!


 
Игорь Шевченко ©   (2010-03-31 15:23) [50]

evvcom ©   (31.03.10 13:53) [49]

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


 
Дмитрий Белькевич   (2010-04-01 14:06) [51]


> MS Office, Visual Studio, Delphi itself - идеальные приложения
> в плане DLL - несколько EXEшников, куча DLL, все прекрасно
> работают. Апдейты проходят на ура (не то, что у толстого
> скайпа, который надо качать целиком)


http://www.google.com.by/search?hl=ru&safe=off&client=opera&hs=y9w&rls=ru&q=dll+not+found&meta=&aq=f&aqi=&aql=&oq=&gs_rfai=


 
Дмитрий Белькевич   (2010-04-01 14:34) [52]

Почему юзеры, сотнями тысяч, должны вообще о каких-то дллках задумываться?

Берём любую дллку и ищем в гугле:

"d3dx9 27.dll", ""msvcr71.dll", "msvcr70.dll", и так далее...


 
Игорь Шевченко ©   (2010-04-01 14:51) [53]

Дмитрий Белькевич   (01.04.10 14:34) [52]


> Почему юзеры, сотнями тысяч, должны вообще о каких-то дллках
> задумываться?


Потому что у юзеров и разработчиков кривые руки. Произведение кривизны и дает такой результат.


 
Дмитрий Белькевич   (2010-04-01 15:19) [54]


> Потому что у юзеров и разработчиков кривые руки. Произведение
> кривизны и дает такой результат.


Если руки разработчиков могут быть так или иначе выпрямлены, то как выпрямить руки юзеров?

Я понимаю, что проще всего софт разрабатывать для идеального, сферического юзера в вакууме и для идеальной, сферической среды (винды/железа/датчкиов/приборов/файлов и так далее).

Но IRL идеального, увы, нигде нет. Впрочем, думаю, вы это и сами знаете еще и лучше меня. Если вам удаётся с этим всем беспроблемно справляться, то можно только порадоваться.


 
Дмитрий Белькевич   (2010-04-01 16:04) [55]

http://quality.eup.ru/MATERIALY3/pap.htm

Мы стараемся по каждому проблемному случаю сделать какие-то выводы. В пределах скромных сил.

Один из выводов - чем меньше в системе файлов, тем меньше отказов.


 
Дмитрий Белькевич   (2010-04-01 16:07) [56]


>  В пределах скромных сил.


В идеале, например, хотелось бы отказаться от операционки.

Отказываемся, от некоторых частей, насколько это возможно.


 
Дмитрий Белькевич   (2010-04-01 16:09) [57]


> Отказываемся, от некоторых частей, насколько это возможно.


Фикс > Отказываемся, насколько это возможно. От некоторых её частей.


 
Игорь Шевченко ©   (2010-04-01 19:15) [58]

Дмитрий Белькевич   (01.04.10 15:19) [54]

Обычно кривизна рук разработчиков имеет больший весовой коэффициент :)

Мы честно стараемся выпрямлять свои. Как получается. У нас используется контроль версий, так что создать DLL Hell крайне трудно. Точнее, можно, но для этого требуются дополнительный осмысленные действия, причем много. Случайно не получится :)


 
KSergey ©   (2010-04-02 13:57) [59]

> Игорь Шевченко ©   (01.04.10 19:15) [58]
> используется контроль версий, так что создать DLL Hell крайне трудно.

Можно это чуть подробнее расписать? О каком именно контроле версий речь.


 
Игорь Шевченко ©   (2010-04-02 15:22) [60]

KSergey ©   (02.04.10 13:57) [59]

Можно. У каждой DLL/BPL есть версия, эта версия прописана в ресурсах DLL и в базе данных, при загрузке DLL версия проверяется, если не совпадает, то либо рушится приложение, либо отрубается функциональность, с не менее громким звуком


 
Германн ©   (2010-04-03 01:52) [61]


> либо отрубается функциональность, с не менее громким звуком

<offtop>
 ПУК!
</offtop>

А в целом мне кажется, что этот способ мало относится к проблеме DLL Hell. Контроль версий прекрасно справляется если и DLL и основную программу делает одна и та же компания.  
Или в других условиях сомнительно помогает. Чем юзера спасёт от DLL Hell громкий ПУК! Разве что полная переустановка твоего ПО. Даже если допустить, что твоё ПО грамотно переустанавливается, то это всё равно геморрой, причем непонятный для юзера.


 
Anatoly Podgoretsky ©   (2010-04-03 10:42) [62]

> Германн  (03.04.2010 01:52:01)  [61]

Справляется, только если она делает по Технологии Дельфи, не в ввиди все в одном файле, а все в одном дистрибутиве, но при этом размер больше и полностью убивает идею ДЛЛ. Если же ДЛЛ отдельно от инсталяции, то тогда АД гарантирован, но не у всех.



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

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

Наверх




Память: 0.57 MB
Время: 0.006 c
1-1269848008
Pavel
2010-03-29 11:33
2011.10.30
Динамическое создание формы при HTTP-запросе


15-1310070597
Юрий
2011-07-08 00:29
2011.10.30
С днем рождения ! 8 июля 2011 пятница


6-1245013139
dmitryfrisky
2009-06-15 00:58
2011.10.30
Компонент TIdMappedPortTCP


15-1309811398
Юрий
2011-07-05 00:29
2011.10.30
С днем рождения ! 5 июля 2011 вторник


6-1245087660
ther
2009-06-15 21:41
2011.10.30
нет коннекта через проксик





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