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

Вниз

Форма из dll   Найти похожие ветки 

 
Дмитрий2   (2010-09-02 20:54) [0]

Как загрузить форму из dll?


 
Сергей М. ©   (2010-09-02 21:10) [1]

Не надо ее "грузить" ни туда ни оттуда.
Геморроя поимеешь полну пятую точку)
Дельфийские формы, если их и поселять во внешние модули, следует селить в bpl, а не в dll.


 
Дмитрий2   (2010-09-02 21:14) [2]


> Сергей М. ©   (02.09.10 21:10) [1]

можно ссылочку


 
Сергей М. ©   (2010-09-02 21:22) [3]

все в стандартной справке написано ?


 
Leonid Troyanovsky ©   (2010-09-02 22:23) [4]


> Дмитрий2   (02.09.10 21:14) [2]

> можно ссылочку

Могу прочитать лекцию, если мотивы засовывания
формы в dll будут приподоткрыты.

--
Regards, LVT.


 
Dennis I. Komarov ©   (2010-09-03 09:47) [5]


> Сергей М. ©   (02.09.10 21:10) [1]
> Не надо ее "грузить" ни туда ни оттуда.
> Геморроя поимеешь полну пятую точку)
> Дельфийские формы, если их и поселять во внешние модули,
>  следует селить в bpl, а не в dll.

Да ладно тебе пугать людей так сразу. Пусть сперва расскажет за каким оно надо (и т.п.), а там уже посмотрим... ;)


 
Игорь Шевченко ©   (2010-09-03 10:15) [6]


> если мотивы засовывания
> формы в dll будут приподоткрыты


мотив - разделение кода.


 
sniknik ©   (2010-09-03 10:25) [7]

> мотив - разделение кода.
в итоге, исходя из этого мотива, кода становится больше, и он становится "неуправляемым". часто с таким встречаюсь.
хотя чего проще для "разделения" завести отдельный модуль (dcu), или как советовали bpl.

короче этот "мотив" это отмазка, и она "не катит" :о), от такого только отговорить попытаются.


 
Игорь Шевченко ©   (2010-09-03 11:09) [8]


> в итоге, исходя из этого мотива, кода становится больше,
>  и он становится "неуправляемым". часто с таким встречаюсь


попробуй руки выпрямить


 
Leonid Troyanovsky ©   (2010-09-03 11:16) [9]


> Игорь Шевченко ©   (03.09.10 10:15) [6]

> мотив - разделение кода.

Полностью согласен с уважаемым sniknik © -
сделать uses проще и надежнее чем LoadLibrary.

Но, тебе, Игорь, я лекции читать не буду :)

--
Regards, LVT.


 
sniknik ©   (2010-09-03 11:16) [10]

поймаю, тех чей код мне присылают, выпрямлю... прямо в их же присутствии... :) (© Райкин/Жванецкий)


 
sniknik ©   (2010-09-03 11:27) [11]

Leonid Troyanovsky ©   (03.09.10 11:16) [9]
есть еще такой термин dll hell. сам себе я его устраивать не буду. а вот разгребать чужие проблемы с этим связанные (или с похожим) приходится.

есть несколько приложений с dll, идея их была типа такой - приложение не меняем, нужен новый функционал/изменение меняем только библиотеку, и без перекомпиляций...
в итоге вижу, что меняется всегда ВСЕ, т.к. одни изменения тянут за собой другие, изменение функций, и как итог одна версия приложения работает исключительно с одной версией dll, а если даже dll-и старые не менялись, то все одно "на всякий случай". идея модульности в общем нафиг летит.


 
Игорь Шевченко ©   (2010-09-03 11:35) [12]

Leonid Troyanovsky ©   (03.09.10 11:16) [9]


> сделать uses проще и надежнее чем LoadLibrary.


Да, конечно. И менять тысячу EXEшников по разным концам планеты вместо одной DLL конечно же, тоже проще, а главное, надежнее :)

sniknik ©   (03.09.10 11:16) [10]

Лучше сразу ампутировать

sniknik ©   (03.09.10 11:27) [11]


> есть еще такой термин dll hell. сам себе я его устраивать
> не буду. а вот разгребать чужие проблемы с этим связанные
> (или с похожим) приходится.


Мы честно сделали проверку версий используемых DLL, если не совпадает - разгребайте сами.


 
Dennis I. Komarov ©   (2010-09-03 12:00) [13]

Живут мелкомягкие диалоги в dll-ках, и ничего так живут. Все юзают и не жалуются...


 
Плохиш ©   (2010-09-03 12:07) [14]


> Dennis I. Komarov ©   (03.09.10 12:00) [13]
>
> Живут мелкомягкие диалоги в dll-ках

Какое отношение они имеют к VCL?


 
sniknik ©   (2010-09-03 12:10) [15]

> Живут мелкомягкие диалоги в dll-ках, и ничего так живут.
ну так сделай аналогично, не пользуясь vcl/потокобезопасно, и твои будут жить без жалоб...

но речь в последних постах немного не о том, а о целесообразности это делать для одного приложения. или цель чтобы твою dll пользовали все?


 
Dennis I. Komarov ©   (2010-09-03 13:08) [16]

А у меня никто и не жалуется :)


> но речь в последних постах немного не о том, а о целесообразности
> это делать для одного приложения. или цель чтобы твою dll
> пользовали все?


Так может всетаки дождаться ответа автора, а не ромашки рвать


> Какое отношение они имеют к VCL?

Они никакого, но причем тут это?


 
sniknik ©   (2010-09-03 13:16) [17]

> Так может всетаки дождаться ответа автора
а кто с автором то разговаривает?

> Они никакого, но причем тут это?
при том что именно vcl не дает нормально работать с формами в dll логика у нее другая, не для пихания в dll.


 
Игорь Шевченко ©   (2010-09-03 13:25) [18]


> при том что именно vcl не дает нормально работать с формами
> в dll логика у нее другая, не для пихания в dll.


А вот Тейксейра с Пачеко пишут не так...


 
Dennis I. Komarov ©   (2010-09-03 14:04) [19]


> именно vcl не дает нормально работать с формами в dll логика
> у нее другая, не для пихания в dll.

С этого момента, поподробнее? Что есть нормальная работа с формами?


 
Leonid Troyanovsky ©   (2010-09-03 16:16) [20]


> Игорь Шевченко ©   (03.09.10 13:25) [18]

> А вот Тейксейра с Пачеко пишут не так...

Они сгоряча.

--
Regards, LVT.


 
Leonid Troyanovsky ©   (2010-09-03 16:20) [21]


> Игорь Шевченко ©   (03.09.10 11:35) [12]

> Да, конечно. И менять тысячу EXEшников по разным концам
> планеты вместо одной DLL конечно же, тоже проще, а главное,
>  надежнее :)

Чего там сложного: http, ftp, DHL :)

--
Regards, LVT.


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


> Чего там сложного: http, ftp, DHL :)


не запутаться, кому что


 
Leonid Troyanovsky ©   (2010-09-03 16:37) [23]


> Dennis I. Komarov ©   (03.09.10 14:04) [19]

> С этого момента, поподробнее? Что есть нормальная работа
> с формами?

VCL неявно инициализирует кучу всякого, для библиотеки
это может быть совсем плохо.
ИШ как-то рассказывал про грабли с инициализацией variants,
ЕМНИП, похожее мне тоже встречалось.

Как должна быть устроена нормальная длл, я как тут ссылался
на ms best practices. Легко заметить, что VCL туда не пролезет.

Ну, и как бы правильно не была написаная dll, от hell оно не спасет.

--
Regards, LVT.


 
Dennis I. Komarov ©   (2010-09-03 17:06) [24]

function ShowLoginForm;
begin
 Result:=false;
 Application.Handle:= AHandle;
 with TFormLogin.Create(Application) do try
   if ShowModal = mrOk then begin
      .....
      Result:=true;
   end;
 finally
   Free;
 end;
end;


Т.е. вот такое право на жизнь в длл не имеет?


 
Leonid Troyanovsky ©   (2010-09-03 17:16) [25]


> Dennis I. Komarov ©   (03.09.10 17:06) [24]

> Т.е. вот такое право на жизнь в длл не имеет?

В нормальной длл - не имеет, см. выше.

Да, и создать диалог на WinAPI, который будет
компактен, а главное - работоспособен хоть
в длл, хоть в потоке, хоть в сях, хоть в вба -
вовсе не бином Ньютона.

Кста, не все длл одинаково полезны, по борландовской
парадигме локализации дфм форм живут в ресурсной длл.

--
Regards, LVT.


 
Игорь Шевченко ©   (2010-09-03 17:21) [26]


> по борландовской
> парадигме локализации дфм форм живут в ресурсной длл


фиговую они парадигму сделали, если честно


 
Leonid Troyanovsky ©   (2010-09-03 17:27) [27]


> Игорь Шевченко ©   (03.09.10 17:21) [26]

> фиговую они парадигму сделали, если честно

Вовремя, IMHO, не сумели разглядеть генеральную линию,
пришлось извратиться.
Но, все равно, в ресурсных длл есть и кое-что полезное.

--
Regards, LVT.


 
Dennis I. Komarov ©   (2010-09-03 17:53) [28]


> Да, и создать диалог на WinAPI, который будет
> компактен, а главное - работоспособен хоть
> в длл, хоть в потоке, хоть в сях, хоть в вба -
> вовсе не бином Ньютона.

Ну, мы вроде не об этом...


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

Конкретно, что в данном коде "страшного"?


 
Игорь Шевченко ©   (2010-09-03 18:09) [29]


> Но, все равно, в ресурсных длл есть и кое-что полезное.


в ресурсных DLL дофига полезного


 
Leonid Troyanovsky ©   (2010-09-05 09:53) [30]


> Dennis I. Komarov ©   (03.09.10 17:53) [28]

> Конкретно, что в данном коде "страшного"?

Посмотри, например, нет ли утечки для твоей версии дельфи.
http://groups.google.com/group/fido7.ru.delphi/msg/8de6822d04bffa9d

--
Regards, LVT.



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

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

Наверх





Память: 0.52 MB
Время: 0.004 c
15-1282079208
cwl
2010-08-18 01:06
2010.11.28
Графический движок


2-1283434549
worldmen
2010-09-02 17:35
2010.11.28
Показ видео в клиент-серверном приложении


10-1171436994
Fix
2007-02-14 10:09
2010.11.28
Генерация презентаций PowerPoint


2-1283944447
Саша
2010-09-08 15:14
2010.11.28
дельфи и HTML


2-1283771755
rnts
2010-09-06 15:15
2010.11.28
Ошибка в запросе





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